2016-04-13 17 views
1

いくつかの情報が含まれているxというテーブルがあります。そのテーブルに私はEDITとDELETEリンクを持っています。今私が欲しいのは、私が管理者としてログインしていて、それらの2つのリンクを有効にしたいのですが、ユーザーとしてログインしても、それらを有効にしたくない場合、そのユーザーがそのテーブルの情報EDITおよびDELETEリンクを有効にする必要があります(ユーザーが他の情報をEDITまたはDELETEするアクセス権を持たない場合) 何かありますか?django管理者のユーザーに対して表示権限のみを与える方法はありますか?

ありがとう

答えて

0

が変更を定義し、あなたの管理者クラス内is_staff状況をチェックする

def has_change_permission(self, request, obj=None): 
    if not request.user.is_staff: 
     return False 

def has_delete_permission(self, request, obj=None): 
    if not request.user.is_staff: 
     return False 
+0

を許可を削除するには、あなたのコード内のいくつかの変更を行なったし、削除のために正常に動作します。 しかし編集をクリックすると、ユーザが「非職員」のステータスを持つときに編集 –

+0

が表示されますが、すべてを「表示専用モード」にしない管理者 –

+0

には入力できません。それは、各オブジェクトの管理ページに移動してデータを見ることができなくなります(削除できません) –

関連する問題