私のプロジェクトでは、User モデルを Staff クラスに拡張し、Group モデルを PermGroup クラスに拡張しようとしています。ただし、PermGroup をスタッフのグループ フィールド (ユーザーから継承) に保存すると、PermGroup オブジェクトがグループとして保存されるだけで、PermGroup クラスで定義したすべてのフィールドとメソッドが削除されます。そこで、グループ フィールドを上書きするのが最善の方法であると判断しました。私が見つけた以前のstackoverflowの質問とDjangoのドキュメントから、これはうまくいくはずです。
class Staff(User):
User.groups = models.ManyToManyField('PermGroup', blank=True)
クラスはファイルの後半に表示され、PermGroup には Staff クラスに依存するフィールドがあるため、「PermGroup」を使用する必要があります。順序を入れ替えると、PermGroup クラスでのみ同じ問題が発生します。
今私が抱えている問題は、グループが、他のすべての「manytomany」フィールドが ManyRelatedManagers である ManyToManyField オブジェクトになっていることです。グループを ManyRelatedManager にしたいのですが、方法がわかりません。
「PermGroup」モデル呼び出しを使用して初期化すると、グループを ManyRelatedManager にすることはできますか?
私のアプローチが間違っていて、PermGroups を Staff クラスに保存する代わりの方法を提案できる場合。大変ありがたく存じます。