【发布时间】:2021-12-19 23:56:25
【问题描述】:
我想为每个用户添加权限(查看、添加、更改、删除),所以我在每个模型中添加了这个元类
class Meta:
default_permissions = ('add', 'change', 'delete', 'view')
但是当我(使用新用户)登录到 Django 管理站点时,用户还没有获得权限。我的方法错了吗?
编辑: 我通过将此代码添加到我的注册表单中解决了这个问题
permission_list = ['view_depot','view_courier','view_client',
'add_depot','add_courier','add_client',
'change_depot','change_courier','change_client',
'delete_depot','delete_courier','delete_client']
permission_list = list(map(lambda x : Permission.objects.get(codename=x), permission_list))
user.user_permissions.add(*permission_list)
如果有人知道比这里更简单的方法,请随时在这里分享
【问题讨论】:
标签: django django-admin django-permissions