如何在 django 的Model
中添加只读权限?
默认情况下,用户有三个权限可用Can add
、Can delete
Can change
。
如何在 Django 的Model
中添加Can read
权限。
第一个解决方案
你没有指定你的 django 版本,但我想你在 Django 1.x 中,因为从 django 2.x 开始有四个默认权限:add
、change
、delete
和新的view
,这是你感兴趣的权限。 所以第一个解决方案(也许不是最简单的)是升级到 django 2.x,并使用view
权限。
第二种解决方案
第二种解决方案,您可以在元中添加要用于元维基中每个模型的权限,如文档中所述:权限。
permissions = (("can_read", "Can read"),)
旁注
请注意,您还可以使用 default_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"),
)