Как создать пользовательский UI для интерфейса администратора в Django

Хорошо, я, вероятно, не смог объяснить проблему в заголовке очень хорошо, но я создаю приложение Django, которое будет иметь различные вкладчики. Эти участники не будут иметь привилегий суперпользователя, а только некоторые привилегии на чтение/запись.

На данный момент у меня есть пользовательский AdminSite, доступ к которому могут получить контрибьюторы. Вот код:

admin.py

class ContributorAdmin(AdminSite):
    def has_permission(self, request):
        return request.user.is_active

urls.py

urlpatterns = [
    path('admin/', admin.site.urls),
    path('contributor/', contrib_admin_site.urls),
    path('login/', loginview, name='login'),
    path('logout/', logoutview, name='logout'),
    #other paths for the app
]

Это работает так, как задумано, и дает контрибьюторам доступ к интерфейсу администратора с ограниченными привилегиями. Однако я хотел бы создать собственный пользовательский интерфейс администратора (не встроенный в Django), который будет использоваться контрибьюторами.

Например, я хотел бы иметь contributor.html в своих шаблонах, которые предоставляют админский интерфейс для участников, но стилизация и т. д. настраивается под себя.

Кроме того, я хотел бы, чтобы мои представления login и logout перенаправляли только на эту пользовательскую страницу. Сейчас страница login перенаправляет на ContributorAdmin, поэтому мое пользовательское представление logout становится бесполезным. Возможно ли это сделать? Заранее спасибо!

Вернуться на верх