【发布时间】:2021-06-18 19:26:49
【问题描述】:
我正在使用 Django / Rest Framework 开发一个小项目 我想添加权限和组。我找不到任何好的教程,我在谷歌上做了一些研究,在这里我找到了答案:
from django.contrib.auth.models import Group, Permission
from django.contrib.contenttypes.models import ContentType
from api.models import Project
new_group, created = Group.objects.get_or_create(name='new_group')
# Code to add permission to group ???
ct = ContentType.objects.get_for_model(Project)
# Now what - Say I want to add 'Can add project' permission to new_group?
permission = Permission.objects.create(codename='can_add_project',
name='Can add project',
content_type=ct)
new_group.permissions.add(permission)
但在这里我看不到任何关于授予用户添加、编辑、删除或查看权限的逻辑。
我应该只需要这段代码来获得权限(例如编辑)还是我应该添加一些其他代码?
谢谢
【问题讨论】:
-
嗨,Ruth,您是否尝试过使用 Django Admin 作为初学者?首先在那里设置权限会更容易。这也是一种运行和测试使用组权限的代码的简单方法。
-
是的,我想以编程方式做到这一点