Расположение вывода изображений для django-imagekit

Я пытаюсь вывести список изображений, которые принадлежат каждой записи в моем приложении, как показано ниже:

pri_photo = vehicle.images.all()[:1]
sec_photos = vehicle.images.all()[1:]

Эта первая часть в порядке. У меня проблемы с тем, когда я пытаюсь

pri_photo.original_image.url
sec_photos.original_image.url

Выше две строки кода дают мне 'QuerySet' object has no attribute 'original_image', В чем может быть проблема?

Я тоже хочу фото в sec_photos выводиться как image1, image2,... до последнего

1 ответ

Решение

[:1] просто ограничивает количество записей, возвращаемых набором запросов, но все же это результат набора запросов, а не один объект.

чтобы получить один объект, вы должны использовать

[0]

или же

[0:1].get()

но это небезопасно, так как вызовет ошибку, если ни один объект не соответствует запросу. чтобы сделать это правильно, используйте filter(), и если результат присутствует, то get(), или

try:
    #get()
except modelname.DoesNotExist:
    # do shomething else

также, если вы ищете последний объект, может быть, вы можете просто использовать http://www.djangoproject.com/documentation/models/get_latest/

Другие вопросы по тегам