Найти - Пользователи
Полная версия: Права групп
Начало » Django » Права групп
1
kpotko
Не могу понять ,с чего начать и куда копать
Есть таблица с 5 полями
есть 3 группы пользователей : user , manager, admin
есть 5 пользователей
есть страница, куда данная таблица отображается.
нужно сделать так, чтобы конкретные группы и конкретные пользователи могли видеть только конкретные поля таблицы.
SirJorah
Ну если так, не видя кода модели, то вот в общих чертах:
if groupadmin in user.groups:
    # формируем контекст из 5 полей
else if groupmanager in user.groups:
    # формируем контекст из 3 полей
else:
    # формируем контекст из 1 поля
Групп ведь может быть несколько у юзера, так что в первую очередь проверяем наличие admin, потом manager, ну и далее по нисходящей. А в шаблоне формируем представление таблицы исходя из наличия того или иного поля в контексте.
Возможно, найдется способ лучше, но и этот должен свою задачу выполнять.
FishHook
kpotko
есть 3 группы пользователей : user , manager, admin
Создатели джанги уже все давно придумали за вас, используйте is_superuser и is_staff
SirJorah
FishHook
используйте is_superuser и is_staff
Вы правы в случае, если в группе admin 1 пользователь и он же superuser. Процентов на 90 это видимо так. А вдруг нет? ТС этого не сообщает. Если admin не суперюзер, то как раз и придется проверять принадлежность к группам.
FishHook
SirJorah
Да никому это не впёрлось. Можно наизобретать чего угодно, только нахрена.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB