-Поиск по дневнику

Поиск сообщений в rss_forum_sources_ru

 -Подписка по e-mail

 

 -Постоянные читатели

 -Статистика

Статистика LiveInternet.ru: показано количество хитов и посетителей
Создан: 29.07.2007
Записей:
Комментариев:
Написано: 80


Python Django ORM действие над строкой таблицы

Суббота, 20 Февраля 2021 г. 13:06 + в цитатник
Naum74: Добрый день, уважаемые специалисты 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), а мне нужно ТОЛЬКО НА ОДНУ СТРОКУ ГДЕ У МЕНЯ ЕСТЬ УКАЗАННОЕ СЛОВО "САМОВЫВОЗ" В ОДНОМ ИЗ ПОЛЕЙ.!
Как мне это сделать?
Спасибо всем кто откликнется!

https://forum.sources.ru/index.php?showtopic=421199&view=findpost&p=3844862

Метки:  

 

Добавить комментарий:
Текст комментария: смайлики

Проверка орфографии: (найти ошибки)

Прикрепить картинку:

 Переводить URL в ссылку
 Подписаться на комментарии
 Подписать картинку