用户组和权限(User groups and permissions)

2019-06-18 04:04发布

我需要实现用户组(非常类似于Facebook的群体)的用户权限。 例如,每个基团可以具有与像权利成员:can_post,can_delete,can_ban,等等。当然,一个用户可以是多种基团中的一员,并基可具有许多不同的用户具有不同的权利。 我需要这个功能是什么型号?

Answer 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)


文章来源: User groups and permissions