我希望在我的Django項目中擁有更細化的權限,但無法決定使用哪個應用程序。 我所擁有的是一樣的東西:Django權限
class Item(models.Model):
name = models.CharField(max_length=64, unique=True)
description = models.CharField(max_length=128, default='')
logo = ImageField(upload_to=/tmp, blank=True, null=True)
Django的標準權限
現在我有可能添加,更改之間並選擇刪除,我想有是一個擴展的更改權限,提供給能力例如,組權限只能更改徽標,但不允許同一組修改項目描述。我不希望或不需要用戶輸入關係,但是可以讓不同的團隊使用標準管理界面編輯模型的單個字段。我甚至不確定我是否在討論每個對象的權限?
有誰知道最好使用什麼或我將如何自己實現它?我也可以想象只有只讀用戶可以訪問/讀取所有內容,但無法修改,這也是不可能的。
感謝您的任何幫助。
不,這些不是對象級權限。簡短的回答:可能是可行的,但它有很多代碼。長答案:你不能做你在香草django管理員描述的。一種方法是將單獨的ModelAdmins與啓用的相關字段掛鉤以分隔AdminSite實例。我認爲您可能必須繼承AdminSite以檢查您的組,並對每個組的權限進行硬編碼--django的內置權限沒有允許/禁止域的概念。 – AdamKG
非常感謝您的期望答案和確認。我期待着實現單獨的AdminSite子類來完成我的任務。 – tinti