2014-03-27 95 views
0

我找不到在django中添加我自己的組的明確說明。 我可以在管理頁面中做到這一點。但這似乎並不正確。如何在django中添加用戶組?

我GOOGLE了它,並有人說把這個

from django.contrib.auth.models import Group, Permission 

different_users = Group(name='Different Users') 
different_users.save() 
outstanding_users = Group(name='Outstanding Users') 
outstanding_users.save() 

的int __init__.py

這並不爲我工作。 這是我得到的錯誤。

django.db.utils.IntegrityError: (1062, "Duplicate entry 'Different Users' for key 'name'") 

任何人都知道在django中創建不同組的正確方法? 我在django文檔中找不到任何東西。

+0

可能您已經在數據庫中擁有該組名稱。 – karthikr

回答

1

使用管理界面添加組完全正常 - 事實上,這就是管理界面的用途。

將該代碼放入__init__.py是絕對沒有意義的。每次導入模塊時(或者每次請求中的第一次,不知道確切的機制),都會運行該文件。那麼你會嘗試在每個單獨的請求期間創建同一個組。

但是,該代碼可以在python shell中使用 - 只需執行一次並在數據庫中創建組。只需使用manage.py shell調用一個Django特定的Python shell,然後開始輸入。但是,通過管理界面添加正確的權限可能更容易。如果你不關心權限,只想讓用戶分組在一起,這種方式就好。

相關問題