Джанго шаблон получить первым? - PullRequest
4 голосов
/ 07 декабря 2009

Мне нужно сделать что-то вроде

{{ article.product.images.first.image.url }}

В моем шаблоне нет «первого» (images это RelatedManager, для которого я нашел очень мало документации).

Есть ли другой способ сделать это? Я могу получить первую модель с

{{ article.product.images.get_query_set|first }}

Но тогда мне нужно копать несколько свойств глубже, и это не работает.


Если это поможет, моя модель изображения выглядит так:

class ComponentImage(models.Model):
    component = models.ForeignKey(Component, related_name='images')
    image = models.ImageField(upload_to='uploads')

А article.product является Component.

1 Ответ

13 голосов
/ 07 декабря 2009

Как насчет {{article.product.images.all.0.image.url}} '?

Это то же самое, что выражение python article.product.images.all[0].image.url.

Другой вариант - добавить метод к модели продукта, который возвращает images[0].image.url

...