Можно ли использовать миксин permissions в какой-либо другой модели, а не в модели пользователя auth?

В моем веб-приложении один пользователь может иметь много учетных записей, но пользователь должен войти в систему только один раз. Однако разные учетные записи могут иметь разные разрешения. Каждая учетная запись имеет свою собственную сессию, и request.user будет меняться в зависимости от того, под какой учетной записью вошел пользователь. Существует два типа входа, первый - когда пользователь входит на сайт, а второй - когда пользователь входит в любой из своих аккаунтов.

Я использовал модель пользователя django auth для хранения email и пароля пользователя и использую ее только для входа первого типа, и она не наследует permissions mixin. А для аккаунтов у меня есть модель аккаунта, которая наследует permissions mixin. Она используется для входа во второй тип и соотнесения каждой учетной записи с ее набором разрешений.

После этого я столкнулся с проблемами, поскольку сторонние библиотеки, такие как django-rules, по-прежнему ссылаются на модель пользователя auth для разрешений при вызове request.user.has_perm('some_perm_string')

Так является ли хорошей практикой использование permissions mixin в какой-то другой модели, а не в модели auth user? Если нет, то permissions доступен в Django как mixin?

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