Django Проверить и установить разрешения для группы пользователей

У меня есть группа пользователей под названием baseusers с набором разрешений, которые я добавил через администратора. Если baseusers не существует, я хочу создать его и установить те же разрешения, что и сейчас. Я могу создать группу, но как мне узнать разрешения из оболочки, а затем добавить их в свой код? Например, два разрешения называются can_fm_list и can_fm_add . Приложение называется fileman . Но нужно ли мне использовать id: s вместо этого? Вот код, который я хотел бы установить.

userprofile / views.py

from fileman.models import Setting (Has the permissions)
from fileman.models import Newuserpath
from django.contrib.auth.models import Group

def register(request):

...

            if Group.objects.count() > 0:
            newuser.groups.add(1)
            else:
            newgroup = Group(name='baseusers')
            newgroup.save()
            newuser.groups.add(1)

fileman / models.py

class Setting(models.Model):
    owner = AutoForeignKey(User, unique=True, related_name='fileman_Setting')
    root = models.CharField(max_length=250, null=True)
    home = models.CharField(max_length=250, null=True)
    buffer = models.TextField(blank=True)
    class Meta:
        permissions = (
            ("can_fm_list", _("Can look files list")),
            ("can_fm_add", _("Can upload files")),
            ("can_fm_rename", _("Can rename files")),
            ("can_fm_del", _("Can move files to basket")),
            ("can_fm_destruct", _("Can delete files")),
        )
    def __unicode__(self):
        return unicode(self.owner)
    def __init__(self, *args, **kwargs):
        super(Setting, self).__init__(*args, **kwargs)
        if not self.root:
            self.root = None
            self.home = None
    def writeBuffer(self, data):
        self.buffer = data
        self.save()
12
задан BoJack Horseman 12 May 2014 в 10:31
поделиться