#35628: date_hierarchy doesn't support GenerateField with output_field set to
DateTimeField or DateField
-----------------------------+-----------------------------------------
Reporter: john-parton | Type: Bug
Status: new | Component: contrib.admin
Version: 5.0 | Severity: Normal
Keywords: | Triage Stage: Unreviewed
Has patch: 0 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 0
-----------------------------+-----------------------------------------
If you have a GeneratedField with output_field set to DateField or
DateTimeField, you cannot use it in the admin as a `date_hierarchy`
because of a check. If you skip the check, it actually works just fine in
my testing. I believe this the check could be adjusted to account for
this.
{{{
# models.py
class TestModel(models.Model):
date_range = DateTimeRangeField(_("Date range"))
start_date = models.GeneratedField(
expression=Lower("date_range"),
output_field=models.DateTimeField(),
db_persist=True,
)
# admin.py
class TestAdmin(admin.ModelAdmin):
date_hierarchy = "start_date"
# Skipping checks actually makes this work exactly correctly
def check(self, *args, **kwargs):
return ()
}}}
I'll see if I can whip up a patch.
--
Ticket URL: <https://code.djangoproject.com/ticket/35628>
Django <https://code.djangoproject.com/>
The Web framework for perfectionists with deadlines.
--
You received this message because you are subscribed to the Google Groups
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/django-updates/01070190e60c93cd-812dbb9d-b9bf-4540-8549-5f1818fc460e-000000%40eu-central-1.amazonses.com.