list_display и list_filter для максимума отношения один ко многим - PullRequest
0 голосов
/ 18 января 2019

Джанго 1.11.13

class Contract(models.Model):
    title = models.CharField()

class Enddate(models.Model):
    contract = models.ForeignKey(Contract)
    date= models.DateField()

Контракт может иметь несколько дат окончания.
В виде списка договоров в админке django Я пытаюсь отобразить столбец с последней / максимальной датой:

def get_enddate(self, obj):
    return Enddate.objects.filter(contract_id=obj.id).aggregate(Max('date'))['date__max']

Что работает, но столбец не сортируется. Я не знаю, как использовать admin_order_field в этом случае.

Кроме того, я хочу создать list_filter вместе с DateRangeFilter для фильтрации контрактов
на основе max (дата) от конечной даты. Аналогичная основная проблема применима и здесь.

Есть идеи? Большое спасибо.

...