Права на отдельные объекты.

2 views
Skip to first unread message

Maxim Bodyansky

unread,
Sep 28, 2007, 1:14:58 PM9/28/07
to django-...@googlegroups.com
Приветствую.

Народ, кто и как реализовывает систему прав доступа к
отдельным объектам из БД? А то нужно до чёртиков, а
Django'шная реализация(ии) сыры до безобразия.

--
WBR,
Maxim Bodyansky

Dmitry Shevchenko

unread,
Sep 28, 2007, 1:39:09 PM9/28/07
to django-...@googlegroups.com
Хм, ну если для своего фронт-енда к юзеру - можно банально сверять id юзера в своих вьюшках.


28.09.07, Maxim Bodyansky < body...@gmail.com> написал(а):

Alex Koshelev

unread,
Sep 28, 2007, 1:40:21 PM9/28/07
to Django russian

Maxim Bodyansky:

Тебе нужен бранч lowleverpermissions
http://code.djangoproject.com/wiki/RowLevelPermissions
Стандартные джанговские пермишены модел-вайд. Ну или на худой конец
самому реализовать под свои нужды.

Maxim Bodyansky

unread,
Sep 28, 2007, 1:54:02 PM9/28/07
to django-...@googlegroups.com
В сообщении от Пятница 28 сентября 2007 Alex Koshelev
написал(a):

Смотрел. Во-первых, оно всё ещё branch, во-вторых, не дружит
с unicode.

А что на счёт "своих схем"? Я делаю примерно так:
1. Для каждой модели создаю набор методов вида
can_action(self, user)
2. Каждый метод проверяет разрешение для user на выполнение
над объектом action и возвращает True, либо False.
3. Во view вызываю object.can_action(request.user), когда
надо проверить права.
4. В шаблоне специальный тег {% ifcan object action %}

Вот и подумалось, может эту задачу как-то проще можно
решить?

--
WBR,
Maxim Bodyansky

Alex Koshelev

unread,
Sep 28, 2007, 4:47:56 PM9/28/07
to Django russian
Тут вопрос больше в удобстве. Если устраивает, то почему бы и нет.
Другое дело, если надо для нескольких моделей похожую схему
реализовывать, то конечно автоматизировать процесс будет лучше. В
декларативном стиле сделать по прмеру самой же джанговой модели.

Maxim Bodyansky

unread,
Sep 29, 2007, 11:06:19 AM9/29/07
to django-...@googlegroups.com
В сообщении от Суббота 29 сентября 2007 Alex Koshelev
написал(a):

> Тут вопрос больше в удобстве. Если устраивает, то почему
> бы и нет. Другое дело, если надо для нескольких моделей
> похожую схему реализовывать, то конечно автоматизировать
> процесс будет лучше. В декларативном стиле сделать по
> прмеру самой же джанговой модели.

Прежде всего это интересно с точки зрения юнификации и
повторного использования компонент (в т.ч. не мной). Вот и
хочу собрать мнения -- кто как делает, чтобы выработать
некий стандарт.

К тому же, в django-russian@ какая-то жизнь появляется ;)

--
WBR,
Maxim Bodyansky

Yuri Baburov

unread,
Sep 29, 2007, 1:21:52 PM9/29/07
to Django russian
Reply all
Reply to author
Forward
0 new messages