Как создаются разрешения в Django? - PullRequest
0 голосов
/ 12 августа 2011

Следующее исключение DoesNotExist::

from django.contrib.auth.models import Permission
Permission.objects.get(codename='add_eventmanager')

Нужно ли создавать это разрешение вручную?

1 Ответ

3 голосов
/ 12 августа 2011

Да, вы должны

ROLE_PERMS =  (
    ('manage_managers', 'Manage managers'),
    ('manage_roles', 'Manage roles'),
    ('manage_enterprise_config', 'Manage enterprise config'),
    ('manage_orga_imports', 'Manage organization imports'),
    ('consult_stats', 'Consult statistics'),
    ('manage_distribs', 'Manage distributions'),
    ('manage_docs', 'Manage documents'),
    ('consult_docs', 'Consult documents'),
    ('manage_employees', 'Manage employees'),
    ('consult_employees', 'Consult employees'),
    ('manage_employee_imports', 'Manage employee imports'),
    ('manage_settings', 'Manage settings'), )

class Role(models.Model):

    class Meta:
        ordering = ['name']
        verbose_name = _('role')
        verbose_name_plural = _('roles')
        permissions = ROLE_PERMS
...