Как зарегистрировать в django admin клас не являющейся моделью?

В Django Admin можно зарегистрировать не только модели, но и другие классы, которые не являются моделями. Для этого необходимо создать свой класс администратора и зарегистрировать его с помощью метода admin.site.register().

Вот пример того, как зарегистрировать не модельный класс в Django Admin:

from django.contrib import admin

class MyNonModelAdmin(admin.AdminSite):
    site_header = 'My Admin'

site = MyNonModelAdmin(name='myadmin')

В этом примере мы создали класс MyNonModelAdmin, который наследуется от admin.AdminSite. Мы также указали пользовательский заголовок для административного интерфейса с помощью site_header.

После того, как мы создали класс администратора, мы создаем его экземпляр site и передаем имя myadmin. Это имя будет использоваться в URL-адресах для доступа к административному интерфейсу.

Теперь, чтобы зарегистрировать класс MyNonModelAdmin в административном интерфейсе Django, просто добавьте следующую строку после определения класса:

site.register(MyClass)

Здесь MyClass представляет ваш пользовательский класс, который не является моделью. После регистрации класс будет доступен в административном интерфейсе Django, и вы сможете настроить его отображение и поведение с помощью атрибутов и методов класса MyNonModelAdmin.

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