170 похожих чатов

У меня в методе form_valid() определена переменная-флаг self.sent, которая должна

меняться в зависимости от того выполнилось ли определённое условие или нет. Далее у меня определён метод get_context_data(), в котором я хочу эту переменную определить в качестве контекста. В методе get_context_data() к этой переменной я также обращаюсь через self. Почему Django ругается, мол, " object has no attribute " ?

17 ответов

10 просмотров

ты сначала определи атрибут в классе с дефолтным значением, а потом уже меняй/проверяй значения в методах

garrip91- Автор вопроса

Не работает: https://dpaste.org/jXBV

а ошибка где?

garrip91- Автор вопроса

Не показывает часть шаблона, прописанную в условии {% if sent %}

form_valid в super делает редирект и создаётся новый инстанс вьюхи, в которой sent = False

+ опередил)

Да, поступил я некрасиво, влез в чужой разговор)

garrip91- Автор вопроса

А как это исправить?

наоборот, мне же писать меньше =)

Смотря, что нужно получить на выходе. Можно в сессию записать, а потом прочитать и удалить. А можно пойти через https://docs.djangoproject.com/en/3.2/ref/contrib/messages/ А можно редирект сделать с гет параметром

garrip91- Автор вопроса

На выходе мне нужно просто переопределить значение переменной sent после отправки сообщения на True и пробросить эту переменную в шаблон через контекст

Звучит так себе, Это как-то неправильно "на выходе получать", для чего этот sent нужен? Что-то в шаблоне за if-ом прячется, какое-то сообщение?

garrip91- Автор вопроса

Вот мой шаблон: https://dpaste.org/OOus

Я три варианта выше написал, ни один не подходит?

garrip91- Автор вопроса

Наверное проще всего сделать редирект с гет-параметром, хотя это вообще неправильно, потому что для этого шаблона надо и урл прописывать и отдельную вьюшку написать

Зачем, что-то отдельное писать? гет параметр на урл не влияет. Гет параметры это в урле после ? знака

Но я бы через messages framework это сделал.

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта