1
0
mirror of https://github.com/django/django.git synced 2024-12-26 11:06:07 +00:00

Fixed #469 -- Admin changelist no longer assumes ForeignKey has 'ordering' set when ordering by a ForeignKey field

git-svn-id: http://code.djangoproject.com/svn/django/trunk@693 bcc190cf-cafb-0310-a4f2-bffc1f526a37
This commit is contained in:
Adrian Holovaty 2005-09-25 22:27:23 +00:00
parent 0fa1aa8711
commit 9b68dbf95e

View File

@ -130,7 +130,8 @@ def change_list(request, app_label, module_name):
lookup_order_field = order_field lookup_order_field = order_field
if isinstance(lookup_opts.get_field(order_field).rel, meta.ManyToOne): if isinstance(lookup_opts.get_field(order_field).rel, meta.ManyToOne):
f = lookup_opts.get_field(order_field) f = lookup_opts.get_field(order_field)
lookup_order_field = '%s.%s' % (f.rel.to.db_table, f.rel.to.ordering[0]) rel_ordering = f.rel.to.ordering and f.rel.to.ordering[0] or f.rel.to.pk.column
lookup_order_field = '%s.%s' % (f.rel.to.db_table, rel_ordering)
# Use select_related if one of the list_display options is a field with a # Use select_related if one of the list_display options is a field with a
# relationship. # relationship.
for field_name in lookup_opts.admin.list_display: for field_name in lookup_opts.admin.list_display: