Я хотел бы использовать систему на основе разрешений, чтобы ограничить определенные действия в моем приложении Django. Эти действия не обязательно должны быть связаны с конкретной моделью (например, доступ к разделам в приложении, поиск ...), поэтому я не могу использовать структуру разрешений акций напрямую, потому что Permission
модель требует ссылки на установленный тип контента.
Я мог бы написать свою собственную модель разрешений, но тогда мне пришлось бы переписать все полезности, включенные в разрешения Django, такие как:
- Возможность назначать права пользователям и группам.
permission_required
Декоратор .User.has_perm
и связанные пользовательские методы.perms
Шаблон переменной .- ...
Я проверил некоторые приложения, такие как django-Authority и django-guardian , но они, похоже, предоставляют разрешения, даже более связанные с системой модели, разрешая разрешения для каждого объекта.
Есть ли способ повторно использовать эту структуру без определения какой-либо модели (кроме User
и Group
) для проекта?