0

特定の権限を持つすべてのユーザーを効率的に検索し、それらのユーザーの中から特定のフラグを持つすべてのユーザーを検索できるようにしたいと考えています (基本Userモデルを拡張し、フラグを持つ独自のモデルを作成しました)。これを行う最も簡単で効率的な方法は何ですか?私は以下を読んでいました(他のサイトの中でも):

ユーザーがdjango Guardianで特定の権限を持つすべてのオブジェクトを取得するにはどうすればよいですか?

しかし、彼らは私の状況では役に立っていないようです。見逃した記事があれば教えてください、ありがとう!

[編集]

次のページを読みました。

http://digitaldreamer.net/blog/2010/5/10/get-all-users-group-django/

基本的に、特定の権限を持ち、特定のフラグを持つすべてのユーザーを取得したいと考えています。今私ができることは、私のコードに従ってUser.objects.filter(organization_id = id)特定の範囲内のすべてのユーザーを取得することです。organizationしかし、そのリスト内で、特定の権限を持つすべてのユーザーが必要です。

4

2 に答える 2

1

私は django-guardian に関連する質問をし、多くの調査の後、自分で答えました。ここで答えを見つけることができるはずです: Django Groups and Permissions. FK を持つようにグループを拡張しますか?

アップデート

次のようなことができます。

user_list = []
for user in User.Objects.filter(organization_id=id):
    if user.has_perm('PERM NAME'):
        user_list.append(user)

詳細については、次のリンクを参照してください: http://packages.python.org/django-guardian/userguide/check.html

于 2012-07-07T17:51:17.477 に答える
0

上記のように行うことができます。ただし、フィルターステートメントをチェーンすることで、それも可能です。私はこの他の質問を参照しました: How to get a list of all users with a specific permission group in Django . 両方のフィルター ステートメントを連鎖させることで、パーミッションを持つすべてのユーザーと、特定の を持つすべてのユーザーを取得できますorganization_id

于 2012-07-20T17:58:08.663 に答える