mirror of
https://github.com/django/django.git
synced 2025-07-04 09:49:12 +00:00
magic-removal: fixed #1245. For models with a OneToOneField and no ordering specified, the admin change_list now orders by the OneToOneField rather than trying to order by the related object's ordering. Use the ordering and list_select_related options to do otherwise.
git-svn-id: http://code.djangoproject.com/svn/django/branches/magic-removal@2720 bcc190cf-cafb-0310-a4f2-bffc1f526a37
This commit is contained in:
parent
9d2992b1c8
commit
0121e4cc94
@ -695,7 +695,10 @@ class ChangeList(object):
|
|||||||
except models.FieldDoesNotExist:
|
except models.FieldDoesNotExist:
|
||||||
pass
|
pass
|
||||||
else:
|
else:
|
||||||
if isinstance(f.rel, models.ManyToOneRel):
|
if isinstance(f.rel, models.OneToOneRel):
|
||||||
|
# For OneToOneFields, don't try to order by the related object's ordering criteria.
|
||||||
|
pass
|
||||||
|
elif isinstance(f.rel, models.ManyToOneRel):
|
||||||
rel_ordering = f.rel.to._meta.ordering and f.rel.to._meta.ordering[0] or f.rel.to._meta.pk.column
|
rel_ordering = f.rel.to._meta.ordering and f.rel.to._meta.ordering[0] or f.rel.to._meta.pk.column
|
||||||
lookup_order_field = '%s.%s' % (f.rel.to._meta.db_table, rel_ordering)
|
lookup_order_field = '%s.%s' % (f.rel.to._meta.db_table, rel_ordering)
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user