RZ имеет хорошее решение
Альтернативное решение (с меньшим количеством javascript) состоит в том, чтобы иметь скрытый «другой» CharField, который становится видимым, если на вашем ChoiceField выбрана опция «Другое»
edit : скрыто, как в style="display: none;"
, а не в поле HiddenInput
что-то вроде (с jQuery):
$("#id_myChoiceField").change(function() {
if ($(this).val() == 'other') {
$("#id_myOtherInput").show();
}
else {
$("#id_myOtherInput").hide();
}
});
Вы должны будете написать свой собственный код проверки и установить required=False
в поле «Другое» Charfield