Django admin orders models by their primary key by default, which can be undesirable on very large tables.
This shows how to disable any ordering on a model.
Note that this behavior is fixed in 1.4 trunk.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21  | from django.contrib import admin
from django.contrib.admin.views.main import ChangeList
from app.models import MyModel
class UnorderedChangeList(ChangeList):
    def get_ordering(self):
        return None, "asc"
class MyModelAdmin(admin.ModelAdmin):
    def get_changelist(self, request, **kwargs):
        """
        Returns the ChangeList class for use on the changelist page.
        """
        return UnorderedChangeList
admin.site.register(MyModel, MyModelAdmin)
 | 
More like this
- Add Toggle Switch Widget to Django Forms by OgliariNatan 1 month, 4 weeks ago
 - get_object_or_none by azwdevops 5 months, 2 weeks ago
 - Mask sensitive data from logger by agusmakmun 7 months, 2 weeks ago
 - Template tag - list punctuation for a list of items by shapiromatron 1 year, 9 months ago
 - JSONRequestMiddleware adds a .json() method to your HttpRequests by cdcarter 1 year, 9 months ago
 
Comments
Please login first before commenting.