Tim*_*imo 7 django django-admin
我正在研究的Django网站有可能让用户注册一个帐户.为了向他们提供一些编辑功能,我使用内置的Django管理员.但是,我遇到了一个问题:用户注册后,他们在Django管理员中没有任何权限,甚至没有查看权限.因此,我的问题是:我如何在代码中为相关模型的用户分配管理员权限,就像我在管理员中编辑用户时在"用户权限"部分中手动分配它们一样?我已经试图与平常 has_xxx_permissions()使用自定义ModelAdmin类,但没有奏效.所以我的猜测是我忽略了一些显而易见的事情.有任何想法吗?
https://docs.djangoproject.com/en/dev/topics/auth/default/#permissions-and-authorization
new_user.user_permissions.add(permission1, permission2, etc...)
Run Code Online (Sandbox Code Playgroud)
为了您的目的,它可能会更加容易和高效的所有新用户分配给特定的组,然后给该组的用户需要的所有权限.该组的任何成员也将继承这些权限.
您可以在管理员中创建组并为其分配权限.然后,您只需在注册码中添加以下内容即可.
try:
group = Group.objects.get(name='The User Group')
except Group.DoesNotExist:
# group should exist, but this is just for safety's sake, it case the improbable should happen
pass
else:
user.groups.add(group)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
13375 次 |
| 最近记录: |