Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[18.97.9.175] |
|
Сообщ.
#1
,
|
|
|
Добрый день, уважаемые специалисты Django!
Прошу помощи в таком вопросе: Есть код: def get_readonly_fields(self, request, obj=None): all_fields = list(self.get_fields(request, obj)) user_blocked_fields = all_fields[:] iskom = 'Самовывоз' naxodim = Articles.objects.filter(delivery_type__title__icontains=iskom) if request.user.has_perm('excels.can_edit_manager_group'): user_blocked_fields = [f for f in user_blocked_fields if f not in self.manager_group_fields] if request.user.has_perm('excels.can_edit_upakovka_group'): user_blocked_fields = [f for f in user_blocked_fields if f not in self.upakovka_group_fields] if request.user.has_perm('excels.can_edit_transport_group'): user_blocked_fields = [f for f in user_blocked_fields if f not in self.transport_group_fields] # if request.user.has_perm('excels.can_edit_manager_group') and naxodim: # user_blocked_fields = [f for f in user_blocked_fields if f not in self.manager_and_transport_group_fields] # # if request.user.has_perm('excels.can_edit_transport_group') and naxodim: # user_blocked_fields = [f for f in user_blocked_fields if f not in self.transport_minus_all_group_fields] return user_blocked_fields Получается, что у меня происходит смена разрешений на редактирование полей в зависимости от прав пользователей. далее я хочу сделать разрешение не на всю таблицу, а только на ОДНУ СТРОКУ таблицы. То есть, когда заходишь в одну запись в таблице и выставляешь там в FK слово "Самовывоз", потом записываешь и тогда происходит смена одних полей по readonlu_fields на другие. Это у меня по фильтру происходит, но на всю таблицу (class), а мне нужно ТОЛЬКО НА ОДНУ СТРОКУ ГДЕ У МЕНЯ ЕСТЬ УКАЗАННОЕ СЛОВО "САМОВЫВОЗ" В ОДНОМ ИЗ ПОЛЕЙ.! Как мне это сделать? Спасибо всем кто откликнется! |