0

auth_user(プライマリテーブル)をauth_user_user_permissions(manyTomany)と結合して、すべてのpermission_idを一覧表示しようとしています。フォローしてみました

PER =sorted((item.permission_id)for item in list(User.objects.filter(user_permissions__user = 2)))

'User'オブジェクトには属性'permission_idがありません。

案内してください

4

2 に答える 2

0

アクセス許可 ID が必要な場合は、アクセス許可テーブルを直接クエリする必要があります。

permission_ids = Permission.objects.filter(user=2).values_list('id', flat=True)
于 2012-05-02T04:00:09.107 に答える
0

User.objects.filter(...)ユーザーのクエリセットを取得します。したがって、アイテムはUser()インスタンスです。アイテムの許可にアクセスするには、直接item.user_permissions.all(). したがって、あなたの場合

User(pk=2).user_permissions.values_list('pk', flat=True).order_by('pk')
# or
[x.pk for x in Permission.objects.filter(user=2).order_by('pk')]

詳細についてはドキュメントを参照してください。

于 2012-05-02T03:59:38.140 に答える