/ Zarządzanie użytkownikami niedostępne w Django admin - django, django-admin

Zarządzanie użytkownikami niedostępne w administratorze Django - django, django-admin

Odkąd zacząłem używać niestandardowej klasy AdminSite w Django admin, nie mogę już edytować użytkowników.

Pomóż mi ponownie wprowadzić tę funkcję.

Odpowiedzi:

1 dla odpowiedzi № 1

Wiele aplikacji innych firm używa domyślnego administratora, więc twoje pytanie dotyczy nie tylko modeli uwierzytelniania. Rozwiązałem ten problem w następujący sposób:

# project_root/project/admin.py

from django.contrib.admin.sites import AdminSite, site

class CustomAdminSite(AdminSite):
pass

admin_site = CustomAdminSite()

# registering to custom admin site all the models from default admin site
for model_cls, admin_obj in list(site._registry.items()):
admin_site.register(model_cls, type(admin_obj))

Również z mojego doświadczenia chciałem zauważyć, że niestandardowa strona administratora jest rzadko potrzebna, ponieważ prawie wszystko można dostosować do domyślnej. Więc teraz w moich projektach wolę robić tak:

# project_root/project/admin.py

from django.contrib import admin

admin.site.site_header = "Custom header"
admin.site.site_title = admin.site.site_header
admin.site.index_title = "Custom index title"
admin.site.index_template = "admin/custom_index.html"
admin.site.app_index_template = "admin/custom_app_index.html"

...itp. https://docs.djangoproject.com/en/1.8/ref/contrib/admin/#adminsite-objects