我需要实现用户组(非常类似于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