summaryrefslogtreecommitdiff
path: root/tests/admin_views/admin.py
diff options
context:
space:
mode:
authorAndreas Pelme <andreas@pelme.se>2018-02-16 03:00:31 +0100
committerTim Graham <timograham@gmail.com>2018-02-15 21:00:31 -0500
commite307ff29d28737d5a764ce2fa7db010231d6fc8e (patch)
treeac6cf4a88d36e5cb5de2c7a28f32a55ded650bfa /tests/admin_views/admin.py
parentd368784bacc7e58b426f29937ee842aa14d439ad (diff)
Fixed #27810 -- Allowed query expressions in admin_order_field.
Diffstat (limited to 'tests/admin_views/admin.py')
-rw-r--r--tests/admin_views/admin.py8
1 files changed, 8 insertions, 0 deletions
diff --git a/tests/admin_views/admin.py b/tests/admin_views/admin.py
index 04e40c2e0d..ceae4c11a2 100644
--- a/tests/admin_views/admin.py
+++ b/tests/admin_views/admin.py
@@ -1,3 +1,4 @@
+import datetime
import os
import tempfile
from io import StringIO
@@ -94,6 +95,7 @@ class ArticleAdmin(admin.ModelAdmin):
list_display = (
'content', 'date', callable_year, 'model_year', 'modeladmin_year',
'model_year_reversed', 'section', lambda obj: obj.title,
+ 'order_by_expression',
)
list_editable = ('section',)
list_filter = ('date', 'section')
@@ -110,6 +112,12 @@ class ArticleAdmin(admin.ModelAdmin):
})
)
+ 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 changelist_view(self, request):
return super().changelist_view(request, extra_context={'extra_var': 'Hello!'})