Например, учетная запись 1 → * Пользователь → 1 Аутентификация 1 имеет несколько пользователей, и каждый пользователь будет иметь 1 аутентификацию
Я исхожу из фона java, поэтому я обычно делаю
- определяют эти классы как java beans (т.е. просто getter и setter, без логики)
- создать класс AccountManager ejb, определить метод create_account (с учетом 1 учетной записи, списка пользователей)
- подготовка данных на веб-уровне, а затем передача данных в AccountManager ejb, например:
accountManager.createAccount(account, userList)
Но в django структура защищает то, что вы помещаете логику домена в классы моделей (уровень строк) или связанные классы менеджера (уровень таблицы), что делает вещи немного неудобными. Да, прекрасно, что если ваша логика включает только одну таблицу, но в реальном приложении обычно каждый шаг будет включать в себя несколько разных таблиц или даже баз данных, то что мне делать в этом случае?
Поместите логику в View? Я не думаю, что это хорошая практика. или даже перезаписать метод сохранения в классе модели, передав дополнительные данные с помощью ** kwargs? то бэкэнд сломается.
Надеюсь, это иллюстрирует мое замешательство в том, где бизнес-логика должна быть помещена в приложение django.