Добавление пользовательских прав для пользователя

Я хотел бы предоставить некоторым существующим пользователям специальное разрешение, которое мне потребуется для доступа к представлению.

Я думаю, мне нужно добавить новое разрешение в таблицу postgres auth_permission, но я подозреваю, что существует способ более высокого уровня. Также есть столбец в auth_permission для content_type, и я не знаю, каково его значение.

Каков правильный способ сделать это?

Ответы

Ответ 1

Посмотрите, как создавать пользовательские разрешения в документах.

class USCitizen(models.Model):
    # ...
    class Meta:
        permissions = (
            ("can_drive", "Can drive"),
            ("can_vote", "Can vote in elections"),
            ("can_drink", "Can drink alcohol"),
        )

Затем запустите manage.py syncdb.

Используйте permission_required decorator, чтобы ограничить доступ к вашему представлению.