mirror of
https://github.com/django/django.git
synced 2025-07-04 17:59:13 +00:00
newforms-admin: Fixed a problem with [6232] where an exception was raised if ModelAdmin didn't specify ordering. Also, fixed #4926.
git-svn-id: http://code.djangoproject.com/svn/django/branches/newforms-admin@6239 bcc190cf-cafb-0310-a4f2-bffc1f526a37
This commit is contained in:
parent
5ec5814bf9
commit
cead4bada9
@ -292,7 +292,8 @@ class ModelAdmin(BaseModelAdmin):
|
|||||||
Returns a QuerySet of all model instances that can be edited by the
|
Returns a QuerySet of all model instances that can be edited by the
|
||||||
admin site.
|
admin site.
|
||||||
"""
|
"""
|
||||||
return self.model._default_manager.get_query_set().order_by(*self.ordering)
|
ordering = self.ordering or () # otherwise we might try to *None, which is bad ;)
|
||||||
|
return self.model._default_manager.get_query_set().order_by(*ordering)
|
||||||
|
|
||||||
def queryset_add(self, request):
|
def queryset_add(self, request):
|
||||||
"""
|
"""
|
||||||
|
@ -24,14 +24,21 @@ class.
|
|||||||
>>> b3 = Band(name='Van Halen', bio='', rank=2)
|
>>> b3 = Band(name='Van Halen', bio='', rank=2)
|
||||||
>>> b3.save()
|
>>> b3.save()
|
||||||
|
|
||||||
|
The default ordering should be by name, as specified in the inner Meta class.
|
||||||
|
|
||||||
|
>>> ma = ModelAdmin(Band, None)
|
||||||
|
>>> [b.name for b in ma.queryset(None)]
|
||||||
|
[u'Aerosmith', u'Radiohead', u'Van Halen']
|
||||||
|
|
||||||
|
|
||||||
|
Let's use a custom ModelAdmin that changes the ordering, and make sure it
|
||||||
|
actually changes.
|
||||||
|
|
||||||
>>> class BandAdmin(ModelAdmin):
|
>>> class BandAdmin(ModelAdmin):
|
||||||
... ordering = ('rank',) # default ordering is ('name',)
|
... ordering = ('rank',) # default ordering is ('name',)
|
||||||
...
|
...
|
||||||
|
|
||||||
>>> ma = BandAdmin(Band, None)
|
>>> ma = BandAdmin(Band, None)
|
||||||
>>> [b.name for b in Band.objects.all()]
|
|
||||||
[u'Aerosmith', u'Radiohead', u'Van Halen']
|
|
||||||
|
|
||||||
>>> [b.name for b in ma.queryset(None)]
|
>>> [b.name for b in ma.queryset(None)]
|
||||||
[u'Radiohead', u'Van Halen', u'Aerosmith']
|
[u'Radiohead', u'Van Halen', u'Aerosmith']
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user