У меня есть поле изображения в Django, но я использую поле StdImage :
class Photo(TimestampedModel):
image = StdImageField(upload_to='photos', variations={'thumbnail': (200, 200), 'large': (1024, 1024)})
Обычно в шаблоне я могу использовать следующее для доступа к 'варианту':
<img alt="" src="{{ object.myimage.thumbnail.url }}"/>
Однако я использую подзапрос для получения последней фотографии для статьи (может быть много фотографий или их нет), и у меня нет другого способа, кроме как извлечь изображение как единое целоезначение (поскольку я не могу получить несколько значений в подзапросе).
newest_photo = Photo.objects.filter(industry__type=OuterRef('pk')).order_by('-date')
list = Article.objects.filter(published=True).annotate(image=Subquery(newest_photo.values('image')[:1]))
Все это хорошо работает.За исключением одного.Я могу получить только обычное изображение, а не вариант (к которому я обычно обращаюсь по object.image.thumbnail.url
).Есть идеи, как получить доступ к этому варианту?