diff options
| author | Hasan Ramezani <hasan.r67@gmail.com> | 2019-11-15 21:59:22 +0100 |
|---|---|---|
| committer | Mariusz Felisiak <felisiak.mariusz@gmail.com> | 2019-11-19 15:40:04 +0100 |
| commit | 0284a26af9d9adc58647df1a684b76969cf258e9 (patch) | |
| tree | 6128f0784e25fa53cabd24b2384ac076aa618997 /tests/admin_views/admin.py | |
| parent | e9def97d1095efed15a109d82fe0498ebd56fa04 (diff) | |
Fixed #30981 -- Fixed admin changelist crash when using F() or OrderBy() expressions in admin_order_field.
Diffstat (limited to 'tests/admin_views/admin.py')
| -rw-r--r-- | tests/admin_views/admin.py | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/tests/admin_views/admin.py b/tests/admin_views/admin.py index 6a11d5b9bb..bf10151356 100644 --- a/tests/admin_views/admin.py +++ b/tests/admin_views/admin.py @@ -105,6 +105,7 @@ class ArticleAdmin(admin.ModelAdmin): 'content', 'date', callable_year, 'model_year', 'modeladmin_year', 'model_year_reversed', 'section', lambda obj: obj.title, 'order_by_expression', 'model_property_year', 'model_month', + 'order_by_f_expression', 'order_by_orderby_expression', ) list_editable = ('section',) list_filter = ('date', 'section') @@ -122,12 +123,20 @@ class ArticleAdmin(admin.ModelAdmin): }) ) + # These orderings aren't particularly useful but show that expressions can + # be used for admin_order_field. def order_by_expression(self, obj): return obj.model_year - # This ordering isn't particularly useful but shows that expressions can - # be used for admin_order_field. order_by_expression.admin_order_field = models.F('date') + datetime.timedelta(days=3) + def order_by_f_expression(self, obj): + return obj.model_year + order_by_f_expression.admin_order_field = models.F('date') + + def order_by_orderby_expression(self, obj): + return obj.model_year + order_by_orderby_expression.admin_order_field = models.F('date').asc(nulls_last=True) + def changelist_view(self, request): return super().changelist_view(request, extra_context={'extra_var': 'Hello!'}) |
