0

私はdjango管理サイトを使用して、人々がデータベースを簡単に管理できるようにしています。

何らかの理由で、一部のデータを一部のユーザーから非表示にしたいと考えています。

Book という名前のモデルがあり、データベースにたくさんの本があるとしましょう。ユーザーごとに、閲覧できる本の範囲が異なります。

どうすればいいですか?

許可を考えています。データをフィルタリングする権限を設定することは可能ですか?

指定されたモデルに従って許可を作成する方法を知っています。しかし、その後、その許可をどのように使用すると思いますか? BookAdmin クラスの「changelist_view」メソッドの一部をオーバーライドする必要があると思いますよね?

どんな助けでもうまくいくでしょう。前もって感謝します

4

1 に答える 1

1

queryset管理モデルでメソッドを使用します。何かのようなもの:

class BookAdmin(admin.ModelAdmin):
    def queryset(self, request):
        return super(BookAdmin, self).queryset(request).filter(owner=request.user)

もちろん、フィルターは本のモデルによって異なりますが、これは一般的な考え方です。

于 2013-05-10T19:15:35.893 に答える