Size: a a a

Django [ru] #STAY HOME

2020 June 06

O

Olex in Django [ru] #STAY HOME
У меня у каждого ответа есть поле is_correct
источник

O

Olex in Django [ru] #STAY HOME
И я думал его проверять уже в форме а не криво доставать в вьюхе.
источник

AD

Alex Dem in Django [ru] #STAY HOME
Artyom Lazovikov
Т.е. в контекст передаём квиз, а дальше что-то типа {% for question in quiz %}
{% for answer in question.answers.all() %}
я так понял, что ключевой вопрос в валидации
источник

O

Olex in Django [ru] #STAY HOME
Alex Dem
я так понял, что ключевой вопрос в валидации
+
источник

O

Olex in Django [ru] #STAY HOME
Просто через вьюху и я могу но мне было интересно как это легко реализовать на формах
источник

AL

Artyom Lazovikov in Django [ru] #STAY HOME
is_valid оверрайдни
источник

AL

Artyom Lazovikov in Django [ru] #STAY HOME
в форме
источник

AD

Alex Dem in Django [ru] #STAY HOME
Переслано от Alex Dem
источник

AD

Alex Dem in Django [ru] #STAY HOME
посему плясать надо отсюда
только придумать как в динамике передавать чойсы
источник

AD

Alex Dem in Django [ru] #STAY HOME
форма может быть пустая и не иметь объекта
нужно вписать override в тот момент когда форма получает инстанс
источник

O

Olex in Django [ru] #STAY HOME
Alex Dem
посему плясать надо отсюда
только придумать как в динамике передавать чойсы
А в этом уже поможет Гугл. Спасибо вам парни.
источник

AL

Artyom Lazovikov in Django [ru] #STAY HOME
удачи
источник

AL

Artyom Lazovikov in Django [ru] #STAY HOME
и добрых снов всем полуночникам
источник

AD

Alex Dem in Django [ru] #STAY HOME
Olex
А в этом уже поможет Гугл. Спасибо вам парни.
надеюсь хоть чем-то реально помогли :)
источник

O

Olex in Django [ru] #STAY HOME
)
источник

AD

Alex Dem in Django [ru] #STAY HOME
BaseModelForm (он наследуется ModelForm) получает инстанс в ините
может есть еще более изящный вариант, но надо копать

но можно сделать

def init (...)
super().init(...)
self.fields.answer = choicefield(...) или answers = multiplechoicefield(...)
источник

AD

Alex Dem in Django [ru] #STAY HOME
источник

O

Olex in Django [ru] #STAY HOME
Alex Dem
BaseModelForm (он наследуется ModelForm) получает инстанс в ините
может есть еще более изящный вариант, но надо копать

но можно сделать

def init (...)
super().init(...)
self.fields.answer = choicefield(...) или answers = multiplechoicefield(...)
Воооо вот это прям отличная идея. Будем пробовать
источник

AD

Alex Dem in Django [ru] #STAY HOME
Olex
Воооо вот это прям отличная идея. Будем пробовать
там, правда, надо ответы валидировать, а не вопросы)))
поэтому я что-то уже сомневаюсь в полноте картины

последнее что скажу, кажется, надо делать model form на question и в чойсы передавать answer'ы
и чтобы это все красиво заработало, так как вопросов много, нужен formset
источник

AD

Alex Dem in Django [ru] #STAY HOME
поэтому я бы проделал схему с одним вопросом, а потом бы перешел к пункту с formset
источник