я делаю этот код в admin.py:
def get_next_in_date_hierarchy(request, date_hierarchy):
if date_hierarchy + '__day' in request.GET:
return 'hour'
if date_hierarchy + '__month' in request.GET:
return 'day'
if date_hierarchy + '__year' in request.GET:
return 'week'
return 'month'
def changelist_view(self, request, extra_context=None):
period = get_next_in_date_hierarchy(request, self.date_hierarchy)
response.context_data['period'] = period
summary_over_time = qs.annotate(
period=Trunc(
'installation_date',
period,
output_field=DateTimeField(),
),
).values('period').annotate(total=Count('id')).order_by('period')
, чтобы вернуть спецификацию фильтра c в админке, но не работает, потому что '__day'
не существует в запросе
мои модели:
contact = models.ForeignKey(Contact, verbose_name=_('User'),null=True, blank=True, on_delete=models.SET_NULL)
installation_date = models.DateTimeField(verbose_name=_('Date Installation'),auto_now=True)
session_id = models.CharField(verbose_name=_("Session"), max_length=100, default=None, null=True, blank=None)
что я могу сделать, чтобы '__day'
существовал в запросе