如何添加django管理员的只读权限?

时间:2019-02-25 15:38:27

标签: python django django-admin

如何在Django的Model中添加只读权限?

默认情况下,用户Can addCan deleteCan change具有三种权限。

如何在Django的Can read中添加Model权限。

2 个答案:

答案 0 :(得分:1)

第一个解决方案

您未指定django版本,但我想您使用的是Django 1.x,因为启动django 2.x有四个默认权限:addchange,{{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"),
    )