2013-06-25 6 views
0

я следующий код:Django ORM "последний" в шаблонах

class Table1(models.Model): 
    name = models.Charfield(max_length=128) 

class Table2(models.Model): 
    name = models.Charfield(max_length=128) 
    event = models.DateTimeField(auto_now=True) 
    table1 = models.ForeignKey(Table1) 

В шаблоне я пытаюсь сделать следующее:

{{ table1.table2_set.latest__event.name }} 

Что я делаю неправильно?

+0

Dunno. Что ты пытаешься сделать? –

ответ

2

Возможно, вы имеете в виду {{ table1.table2_set.latest.event.name }}? Чтобы использовать .latest() без имени поля, определите get_latest_by в модели Table2.

+0

Если я использую этот код без get_latest_by, я получаю AssertionError: last() требует в параметре параметра field_name или 'get_latest_by'. –

+0

@Ant Да, Django не имеет представления о том, какое поле вы хотите использовать для сортировки набора запросов и получения из него последнего элемента, если вы не сообщите об этом. – okm