一尘不染

用户组和权限

django

我需要实现用户组的用户权限(与Facebook组非常相似)。例如,每个组可以具有具有以下权限的成员:can_post,can_delete,can_ban等。当然,一个用户可以是多个组的成员,并且组可以具有许多具有不同权限的不同用户。我需要什么型号的功能?


阅读 353

收藏
2020-03-29

共1个答案

一尘不染

Django有一个内置的网上论坛系统。每当你有这样的问题时,我建议你搜索Django文档,该文档广泛,有用并且编写得很好。

只要你使用该django.contrib.auth应用程序,就可以访问组。然后,你可以为这些组分配权限。

from django.contrib.auth.models import User, Group, Permission
from django.contrib.contenttypes.models import ContentType

content_type = ContentType.objects.get(app_label='myapp', model='BlogPost')
permission = Permission.objects.create(codename='can_publish',
                                       name='Can Publish Posts',
                                       content_type=content_type)
user = User.objects.get(username='duke_nukem')
group = Group.objects.get(name='wizard')
group.permissions.add(permission)
user.groups.add(group)
2020-03-29