如何在Django的Model
中添加只读权限?
默认情况下,用户Can add
,Can delete
,Can change
具有三种权限。
如何在Django的Can read
中添加Model
权限。
答案 0 :(得分:1)
您未指定django版本,但我想您使用的是Django 1.x,因为启动django 2.x有四个默认权限:add
,change
,{{1 }},以及新的delete
,这就是您感兴趣的那个。
因此,第一个解决方案(可能不是最简单的)是升级到django 2.x,并使用view
权限。
第二个解决方案,您可以在Meta中添加要用于每种模型的权限,如docs:permissions中所述。
view
请注意,您还可以使用default_permissions键按型号编辑默认权限。 See default-permissions。
答案 1 :(得分:0)
正如文档custom permissions所示,您可以在模型的元类上定义自定义权限。
class Task(models.Model):
...
class Meta:
permissions = (
("change_task_status", "Can change the status of tasks"),
("close_task", "Can remove a task by setting its status as closed"),
)