1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 | # ----- helpers/admin.py -----
from django.contrib import admin
from django.contrib.auth.models import User
class SortedActiveUserModelAdmin(admin.ModelAdmin):
def get_form(self, request, obj=None):
form = super(SortedActiveUserModelAdmin, self).get_form(request, obj)
for fieldname, field in form.base_fields.items():
if hasattr(field.widget, 'rel') and field.widget.rel.to == User:
field.queryset = field.queryset.filter(is_active=True).order_by('username')
return form
# ----- myapp/admin.py -----
from django.contrib import admin
from helpers.admin import SortedActiveUserModelAdmin
from myapp.models import MyModel
class MyModelAdmin(SortedActiveUserModelAdmin):
pass
admin.site.register(MyModel, MyModelAdmin)
|
Comments