Django ModelForm: изменение значения поля, когда оно пустое
Есть ли способ изменить значение поля (связанного с внешним ключом) в Django ModelForm
после инициализации и заполнения формы пользователем (я использую request.POST
). Я хочу изменить значение, когда пользователь не выбирает ни один вариант из выпадающего списка. Я попробовал следующее, но безрезультатно:
form.data['field'] = 1
Я получил следующее сообщение:
This QueryDict instance is immutable
Я знаю, что могу установить начальное значение (по умолчанию) перед введением данных в форму, но я не хочу, чтобы опция по умолчанию была выделена в выпадающем списке.
во-первых - вы устанавливаете свойство polls
после вызова save()
, так что даже если это сработает, вы не сохраните изменение.
Второе - если вы хотите установить свойство polls
в модель, то установите его в модель, а не в форму (formulari_mostra
). Я не знаю, как выглядят ваши модели, поэтому могу только предположить, что модель, которая имеет свойство pools
, находится в переменной feedback
, поэтому вы хотите сделать:
feedback = formulari_mostra.save(commit=False)
feedback.pools = 1
feedback.save()