我想在Django中编写自己的权限,我的意思是我想精确地定义用户可以或不可以做什么,我已经阅读了这篇文章enter link description here,但是它似乎change_task_status是Django中预定义的东西。例如,我想精确地定义用户只能访问视图的get方法,只能从数据库表的第一行到第八行访问,类似这样的内容。我该如何做到这一点?
编辑:
首先,我使用Django中auth_permission表中的默认权限进行了此操作,对于每个模型,它都会在此表中创建添加/查看/更改/删除的权限,我知道我可以将其用于我的目的。但我有两个问题,首先我不想使用Django.contrib.auth模型的默认权限类,因此我想创建自己的权限表(而不是auth_permissions,我有mapp_permissions),现在这个新表没有填充默认权限,所以我需要自己定义权限,我的意思是我必须说明add_modelname是什么意思,而且在这样做之后,我需要定义一些新的权限,比如说对于一个模型:user_x有view_modelname的权限,其他用户也有这个权限,但是从存储在数据库中的此模型的数据中,用户y只能看到数据库表的1到8条记录,而不是所有记录。
编辑2:
正如您在权限类注释中所见:“目前无法说“Mary仅可以更改具有特定状态或发布日期的新闻故事。””,我该怎么办?此外,Django文件中应该有一些代码来定义机器,例如在表中的add_user表示什么。
__init__.py
文件中导入所有模型。请看这里 https://dev59.com/D2035IYBdhLWcg3wPdkS - Ken4scholars