0
我有一個ModelAdmin(A),它是另一個ModelAdmin(B)的內聯。 我想給用戶(U)的管理員權限(添加,更改和刪除)只爲A. 我給用戶他需要的所有權利(我認爲):is_staff:True |可以添加,更改,刪除A. 問題是U無法在管理面板上看到內聯A.如果我給他也B的權限,但是我不想讓他修改這個模型。 在這些情況下,模型B有一種「只讀」的方式嗎?Django僅允許內聯的管理權限
我有一個ModelAdmin(A),它是另一個ModelAdmin(B)的內聯。 我想給用戶(U)的管理員權限(添加,更改和刪除)只爲A. 我給用戶他需要的所有權利(我認爲):is_staff:True |可以添加,更改,刪除A. 問題是U無法在管理面板上看到內聯A.如果我給他也B的權限,但是我不想讓他修改這個模型。 在這些情況下,模型B有一種「只讀」的方式嗎?Django僅允許內聯的管理權限
如果要允許某些用戶編輯模型A但不允許模型B添加A作爲ModelAdmin並且只允許這些用戶管理(添加,編輯,刪除)模型A,則管理界面用於編輯。
class AAdmin(admin.ModelAdmin):
...
class AInline(GenericTabularInline):
model = A
...
class BAdmin(admin.ModelAdmin):
inlines = [
AInline,
]
...
admin.site.register(A, AAdmin)
admin.site.register(B, BAdmin)
a_user.user_permissions.add('my_app.add_a', 'my_app.change_a', 'my_app.delete_a')
b_user.user_permissions.add('my_app.add_b', 'my_app.change_b', 'my_app.delete_b')
感謝您的回答,我明白了!只是爲了將來的用戶,我認爲你寫內聯有一個錯誤= [BInline,] ...認爲你想寫內聯= [AInline,] – Alessio 2014-11-04 09:56:56