Django как использовать post_save для загрузки изображения из другой модели
Я пытаюсь скопировать изображение из моей модели ProductImage и загрузить его в мою модель OrderItem, когда будет создаваться любой новый элемент заказа, но получил эту ошибку AttributeError: 'NoneType' object has no attribute 'image'
но вы можете видеть, что моя модель ProductImage имеет поля изображения и также изображения выходят для текущего продукта, который создается заказ. вот мои две модели:
#ProductImage Model
class ProductImage(models.Model):
product = models.ForeignKey(Product,on_delete=models.CASCADE,blank=True,null=True)
image = models.ImageField(upload_to=dynamic_upload_path)
thumb_image = models.ImageField(upload_to=dynamic_upload_path,blank=True,null=True)
#OrderItem models
class OrderItem(models.Model):
order = models.ForeignKey(Order, on_delete=models.CASCADE,blank=True,null=True)
product = models.ForeignKey(Product, on_delete=models.SET_NULL,blank=True,null=True)
product_image = models.ForeignKey(ProductImage, on_delete=models.SET_NULL,blank=True,null=True)
order_image_file = models.ImageField(blank=True,null=True,upload_to=orderImage_upload_path)
мои сигналы:
@receiver(post_save, sender=OrderItem)
def OrderItemSignals(sender, instance, created,**kwargs):
if created:
instance.order_image_file = instance.product_image.image
По сути, когда создается какой-либо элемент заказа, я хочу, чтобы при сохранении сообщения копировалось изображение из модели изображения товара и загружалось в поля изображения модели элемента заказа.