From 2c727101113770d41e0907b333568bc2c25435e0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20Fleschenberg?= Date: Sat, 7 Nov 2015 21:50:40 +0100 Subject: [PATCH] Fixed #25531 -- Documented that admin_order_field supports lookups. --- docs/ref/contrib/admin/index.txt | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/docs/ref/contrib/admin/index.txt b/docs/ref/contrib/admin/index.txt index a8cdfbfdfb..ad6a6e2f45 100644 --- a/docs/ref/contrib/admin/index.txt +++ b/docs/ref/contrib/admin/index.txt @@ -714,6 +714,22 @@ subclass:: colored_first_name.admin_order_field = '-first_name' + ``admin_order_field`` supports query lookups to sort by values on related + models. This example includes an "author first name" column in the list + display and allows sorting it by first name:: + + class Blog(models.Model): + title = models.CharField(max_length=255) + author = models.ForeignKey(Person, on_delete=models.CASCADE) + + class BlogAdmin(admin.ModelAdmin): + list_display = ('title', 'author', 'author_first_name') + + def author_first_name(self, obj): + return obj.author.first_name + + author_first_name.admin_order_field = 'author__first_name' + * Elements of ``list_display`` can also be properties. Please note however, that due to the way properties work in Python, setting ``short_description`` on a property is only possible when using the