Форум программистов, компьютерный форум, киберфорум
Python: Django
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.55/11: Рейтинг темы: голосов - 11, средняя оценка - 4.55
15 / 12 / 4
Регистрация: 06.04.2020
Сообщений: 95

Вызов метода модели с параметром

06.04.2020, 20:04. Показов 2281. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Напрямую из шаблона не получается вызвать метод модели с параметром. Сделал через фильтр.

Вызов из шаблона:
HTML5
1
<td>{{ object|row_classes:user }}</td>
Фильтр:
Python
1
2
3
4
@register.filter
def row_classes(watch_obj, user):
    obj = watch_obj.content_object
    return obj.get_row_classes(user)

Метод модели:

Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
@property
def get_row_classes(self,user):
        row_classes = ['is_topic',]
        watch_list = WatchList.objects.filter(user=user, object_id=self.id,
                                              content_type=ContentType.objects.get_for_model(Topic))
        if watch_list:
            watch_obj = watch_list.first()
 
        if self.is_closed:
            row_classes.append('is_closed')
        elif watch_list:
            row_classes.append('is_watched')
            if watch_obj.first_not_viewed_comment:
                row_classes.append('there_are_new_posts')
        else:
            row_classes.append('is_regular')
        return row_classes

Но получаю в фильтре в строке вызова метода получаю ошибку:
get_row_classes() missing 1 required positional argument: 'user'

Параметр user в фильтр передаётся:
Миниатюры
Вызов метода модели с параметром  
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
06.04.2020, 20:04
Ответы с готовыми решениями:

XAML. Вызов метода с параметром.
Вот что у меня имеется в XAML: &lt;ObjectDataProvider ObjectType=&quot;{x:Type src:DataProvider}&quot; ...

Вызов метода с параметром через InvokeRepiating
Скажите ребята. реально такое ? позволяет либо так:InvokeRepeating(&quot;SpawningNormalNode&quot;, 0.0f, interval); либо так:...

Преобразовать вызов метода класса с параметром в функцию с двумя параметрами
Можно ли при помощи адаптеров преобразовать выражение типа x-&gt;Func(y) в выражение Func(x,y)? Нужно для использования в list.sort()....

2
 Аватар для m0nte-cr1st0
1043 / 578 / 242
Регистрация: 15.01.2019
Сообщений: 2,178
Записей в блоге: 1
06.04.2020, 22:19
Лучший ответ Сообщение было отмечено m0nte-cr1st0 как решение

Решение

Shandrik, property убери
1
15 / 12 / 4
Регистрация: 06.04.2020
Сообщений: 95
06.04.2020, 23:20  [ТС]
Спасибо, добрый человек!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
06.04.2020, 23:20
Помогаю со студенческими работами здесь

Вызов метода динамически созданного экземпляра модели
Здравствуйте! Имеется некоторое количество моделей. например public class Category : BaseModel { ...

Полиморфизм: вызов метода базового класса, переопределенного метода и нового метода
В базовом классе метод помечен как virtual. Насколько я понял из книги: override означает, что метод не утрачивает связи с базовым...

Вызов методов классов друг у друга (вызов метода из другого класса)
Есть несколько классов, которые могут вызывать методы (функции) друг у друга. Логика: класс1 имеет метод А, класс2 имеет метод Б, класс1...

Вызов метода get_odds возвращает нечётные числа из первоначального списка, вызов get_evens — чётные
Реализовать класс Selector. Экземпляр этого класса при инициализации получает список чисел. Вызов метода get_odds возвращает нечётные числа...

Вызов метода, ожидающего завершение другого метода
Имеется процедура Proc. Я её вызываю в Button. Только вот программа, не дожидаясь завершения процедуры переходит к следующей строчке кода....


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои. А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru