我需要爲使用Django和Python的註冊用戶設置權限。我做了一些事情,但不知道它是否滿足我的要求。我在下面解釋我的代碼。如何根據用戶使用Django和Python設置權限?
class Control(models.Model):
"""docstring for Control"""
user_id = models.ForeignKey(User)
control_reactor = models.IntegerField(default=0)
find_reactor = models.IntegerField(default=0)
view_reactor = models.IntegerField(default=0)
class Meta:
"""docstring for Meta"""
permissions = (
("view_reactor", "can view reactor"),
("find_reactor", "can find reactor"),
("controll_reactor", "can controll reactor"),
)
我使用Django裝飾功能,像@permission_required
訪問這些許可。在這裏,我需要按用戶設置3個權限,但是這個模型類正在按照需求進行混淆。
您可以編輯按我的權限集。在哪個文件中,我將定義代碼的第一部分,'BlogPost'是應用程序名稱的權利?在這裏我需要根據不同的用戶設置三種不同的權限。 – satya
@satya查看編輯。 BlogPost是應用程序名稱。您還需要爲每個用戶明確使用權限模型授予權限。遷移後獲得Permission對象並使用它來授予用戶權限。 –
權限將在管理頁面內設置,而不是任何登錄用戶,你的意思是'從django.contrib.auth。模型導入權限,用戶 DEF grant_permissions(請求): 用戶= request.user CONTENT_TYPE = ContentType.objects.get_for_model(植物) 權限= Permission.objects.get( 代號= 'change_plant', CONTENT_TYPE = CONTENT_TYPE, ) user.user_permissions.add(permission)',我需要在views.py中這樣寫。 – satya