0

こんにちはim本当にdjangoの初心者です。ユーザーグループでリストをフィルタリングする方法があるかどうかを尋ねることはできますか?adminでユーザーを作成する場合、グループを作成するための選択肢もあります。これらのユーザーを特定のグループに割り当てた後、別のモデルがあります。たとえば、スタッフ情報が提供され、ユーザーにリンクされているスタッフです。したがって、スタッフはユーザーである必要があり、グループスタッフのメンバーである必要もあります。新しいスタッフを作成するときのユーザーのリストについては、スタッフページにドロップダウンメニューをすでに作成しました。

問題は、スタッフページに表示されるユーザーのリストが、ユーザーとのOnetoOne関係である必要があるため、ユーザーグループと割り当てに応じてどのようにフィルタリングできるかがわからないように見えることです。そのため、特定のスタッフを使用した、またはすでにリンクしているユーザーは、新しいスタッフを作成するときにそのリストに再度表示されることはありません。

Staff.model.count()を使用することを考えていますか?それを行うには、==ユーザーをスタッフユーザーグループに追加します。しかし、それをカスタマイズするためにどこに行けばいいですか?助けてください

4

1 に答える 1

0

独自のModelAdminを作成してから、Userの登録を解除し、カスタム動作でUserAdminにUserを登録する必要があります。このようにして、クエリセットやフォームなどを上書きできます。ModelAdminのソースコードを確認してください。

class UserAdmin(admin.ModelAdmin):
    # do stuff

admin.site.unregister(User)
admin.site.register(User, UserAdmin)
于 2012-05-12T08:56:39.627 に答える