私の Web アプリケーションでは、1 人のユーザーが複数のアカウントを持つことができますが、ユーザーはメールとパスワードを使用して 1 回だけログインする必要があります。ただし、アカウントごとに異なるアクセス許可を持つことができます。各アカウントには独自のセッションがあり、ユーザーがログインしたアカウントに応じて request.user が変わります。ログインには 2 つのタイプがあります。最初のタイプはユーザーが Web サイトにログインするときで、もう 1 つのタイプはユーザーが自分のアカウントにログインするときです。
私はdjango認証ユーザーモデルを使用してユーザーの電子メールとパスワードを保存し、それを最初のタイプのログインにのみ使用し、パーミッションミックスインを継承しません。アカウントについては、パーミッション mixin を継承するアカウント モデルがあります。これは、2 番目のタイプのログインに使用され、各アカウントをそのアクセス許可のセットに関連付けます。
認証ユーザーモデルではなく、他のモデルでパーミッションミックスインを使用することは良い習慣ですか? そうでない場合、なぜアクセス許可が mixin として利用できるのでしょうか?