Управление наследованием моделей в Django admin - PullRequest
0 голосов
/ 03 апреля 2020

Я разрабатываю вместе с моей командой Django веб-приложение, которое обеспечивает аутентификацию и создание профиля пользователя. По сути, мы имеем дело с моделью Profile, которая расширяет django.auth.contrib.models.User, реализуя метод связи «один к одному», как показано ниже

model.py

class Profile(models.Model):
    user = models.OneToOneField(User, on_delete=models.CASCADE)
    birth_date = models.DateField(default=datetime.date.today)
    # other custom fields

    def __str__(self):
        return self.user.username

Поскольку мы зарегистрировали модель в admin.py, она появляется в административной панели Django, как и должно быть.

Затем мы ввели другую модель PersonalTrainer, которая является наследуемым классом Profile один.

admin.py

from django.contrib import admin
from usermanager.models import Profile, PersonalTrainer

admin.site.register(Profile)
admin.site.register(PersonalTrainer)

Существует ли программный способ организации экземпляров PersonalTrainer таким образом, чтобы они отображались как в разделе «Профиль», так и в PersonalTrainer раздел? Другими словами, мы хотели бы иметь экземпляр PersonalTrainer, который появляется в аутентификационной модели пользователя, модели профиля и модели PersonalTrainer.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...