Недопустимое имя(я) поля, указанное в select_related: 'images'. Возможные варианты: user_changed, video, prices, attributes, apiconnections
models.py:
class ProductModel(models.Model):
name = models.CharField(max_length=150, unique=True)
type = models.CharField(max_length=100, blank=True)
sku = models.CharField(max_length=100, unique=True)
barcode = models.CharField(max_length=50, unique=True)
description = models.TextField(blank=True)
categories = models.ManyToManyField(CategoryModel, blank=True)
video_url = models.CharField(max_length=190, blank=True)
datetime_created = models.DateTimeField(auto_now_add=True)
datetime_updated = models.DateTimeField(auto_now=True)
user_changed = models.ForeignKey(User, on_delete=models.SET_NULL, null=True, blank=True)
old_id = models.CharField(max_length=50, unique=True, blank=True, null=True, default="")
def __str__(self):
return self.name
class Images(models.Model):
product_id = models.ForeignKey(ProductModel, db_index=True, on_delete=models.CASCADE, verbose_name='Товар')
image = models.ImageField(upload_to="products/images/", blank=True, default="products/noimage.jpeg")
image_small = models.ImageField(upload_to="products/images_small/", blank=True, default="products/noimage.jpeg")
image_ori = models.ImageField(upload_to="products/images_ori/", blank=True, default="products/noimage.jpeg")
default = models.BooleanField(default=False)
def __str__(self):
return self.product_id.name
class Video(models.Model):
product_id = models.OneToOneField(ProductModel, db_index=True, on_delete=models.CASCADE)
video = models.FileField(upload_to="products/videos/", blank=True)
def __str__(self):
return self.product_id.name
В файле views.py этот код работает идеально:
products = ProductModel.objects.all().select_related('prices', 'apiconnections', 'video').prefetch_related('categories')
В то время как эта выдает ошибку Invalid field name(s) given in select_related: 'images'. Варианты: user_changed, video, prices, attributes, apiconnections:
products2 = ProductModel.objects.all().select_related('images')
Я также пытался использовать prefetch_related, чтобы связать все мои изображения с товарами. Это не сработало.