0
このクエリを実行して、テーブルauth_group_permissionsに関連付けられているすべてのグループのIDを取得します。クエリをDjango ORMコードに変換する
select id from auth_group where id in (select group_id from auth_group_permissions group by group_id)
このクエリを実行して、テーブルauth_group_permissionsに関連付けられているすべてのグループのIDを取得します。クエリをDjango ORMコードに変換する
select id from auth_group where id in (select group_id from auth_group_permissions group by group_id)
モデルGroup
とPermission
がManyToManyフィールドpermissions
介して互いに接続されています。私はインターネットで見つけ、私はあなたが次の操作を行う必要があり、覚えている内容に基づいて情報をもとにsource
を参照してください:
from django.contrib.auth.models import Group, Permission
grouped_permissions = Permission.objects.order_by().distinct('group_id')
your_ids = Group.objects.filter(permissions__group_id__in=grouped_permissions).values_list('id', flat=True)
最終正しい答えだこと。
grouped_permissions = Permission.objects.filter().order_by().distinct().values_list('group__id',flat=True)
your_ids = Group.objects.filter(id__in = grouped_permissions)
アイデアをお寄せいただき、ありがとうございました。ドキュメントをよく読んで答えを得ました。しかし、彼は私に仕えました。 –