Создать метод модели для общего приложения на основе проекта?
Я не могу найти хорошее решение этой проблемы:
У меня есть приложение, которое имеет общую модель User
(AbstractUser
)
Это приложение используется совместно несколькими проектами (у которых есть свои собственные приложения)
Структура выглядит примерно так:
Проект X
- Приложение A
- Приложение B
Проект Y
- Приложение A
- Приложение C
- Приложение D
Проект Z
- Приложение A
- Приложение E
- App F
Я нахожусь на этапе, когда мне нужно добавить метод модели на модель User
в Project Z, чтобы сделать жизнь проще. Он будет выполнять некоторую бизнес-логику с участием других моделей из других связанных приложений в Project Z.
Я не могу добавить этот метод непосредственно в модель User
, потому что тогда другие проекты потерпят неудачу - поскольку они не будут содержать все ссылающиеся модели.
Какой лучший способ достичь этого в Django?
Должен ли я создать ProjectZUser
, который наследует общую модель User
и добавить методы на эту модель?