我可以以編程方式爲整個應用程序提供組的所有權限嗎?
當然,我可以給該組全部添加,更改,刪除應用程序中每個特定模型的權限。但後來,如果我需要添加另一個模型,我需要更改代碼,我也授予了權限。
因此,我需要找到一種可能性,即將所有模型都授予應用程序中的所有模型,而不必知道它們的名稱。
Django文檔不幫我。整個應用程序的Django組權限
編輯
爲了給你更多的細節:我sublcassed的RemoteUserBackend和推翻的configure_user方法將一個新的用戶添加到特定的組。如果沒有創建這個羣體,我創建它,並希望給予其必要的權限:
class MyRemoteUserBackend(RemoteUserBackend):
def configure_user(self, user):
group, created = Group.objects.get_or_create(name="mygroup")
if created:
pass
# Give permissions here
user.groups.add(group)
group.save()
我不認爲有使用默認的許可制度的方式 – yuvi
即進入我分的唯一的事d是編寫一箇中間件,檢查請求路徑是否與應用程序匹配,然後檢查用戶權限。然而,這是一個相當模糊的方式。 – schneck
也許有辦法得到模塊的所有類名?那麼我可以做一些像'在模塊中的classname:classname.addpermission ...' – 0xAffe