编辑:
我修复了我有一个多表继承模型如下:
class Image(models.Model):
# other fields are removed for simplicity
image = models.ImageField(upload_to="image")
class ItemImage(Image):
# other fields are removed for simplicity
display_name = models.CharField(max_length=50)
我想查询此模型并在我不需要图像时(在父模型中)推迟图像字段。我的容器模型看起来有点像这样:
class Item(models.Model):
item_image = models.OneToOneField(ItemImage)
查询如下所示:
test.models.Item.objects.select_related('item_image').defer("item_image__image").get(pk=1)
Django正在抛出错误说:
ValueError: u'image_ptr_id' is not in the list.
如果我查询不在父模型中的字段,Django不会抛出错误:
test.models.Item.objects.select_related('item_image').defer("item_image__display_name").get(pk=1)
你知道如何解决这个问题吗?
观察: