私は自分の django-app のオブジェクトベースのアクセス許可を持つ認証バックエンドを開発しています。オブジェクトとアクセス許可の間の一般的な関係を使用しています:
class GroupPermission(models.Model):
content_t= models.ForeignKey(ContentType,related_name='g_content_t')
object_id = models.PositiveIntegerField()
content_object = generic.GenericForeignKey('content_t', 'object_id')
permission=models.ForeignKey(Permission)
group = models.ForeignKey(Group)
そして今、特定のグループまたはユーザーが特定の権限を持っている、指定されたコンテンツ タイプのすべてのオブジェクトを取得したいと考えています。それを行う最善の方法は何ですか?アプリのモデルでリレーションの 2 番目の端を定義しますか? カスタムSQLを書いたほうがいいですか?私は汎用バックエンドを構築しようとしているので、それを使用しているアプリに依存したくありません。ありがとう!