Вы можете переопределить любое из ваших полей ModelForm
, даже те, которые приходят из модели, просто установив его как атрибут класса, как вы это делали бы для обычного Form
поля:
class NewModelForm(ModelForm):
fk_field = forms.CharField(required=False, disabled=True)
class Meta:
model = MyModel
fields = ['fk_field', 'other_field']
Опция disabled
в поле устанавливает для ввода значение отключено.
Обратите внимание, что не следует доверять представленным данным, которые содержат правильное начальное значение для fk_field
.Любой может отправить другой fk_field
, если знает, как использовать curl
или Почтальон, даже если <input>
отключен.Так что, если вы просто проигнорируете какое-либо значение и установите для него правильное значение в вашем представлении.