Я новичок в django и у меня есть вопрос. Я получил ModelForm с помощью виджетов. Поскольку у меня есть поле с именем discount
, которое я хочу редактировать только в том случае, если отображаемая модель соответствует некоторым требованиям, я делаю его доступным только для чтения с помощью записи виджета:
class Meta:
widgets = {'discount': forms.TextInput(attrs={'readonly': True})}
Теперь я хочу сделать возможным повторную запись в это поле, если и только если модель (здесь называется Order) имеет тип поля, установленный на целочисленное значение 0.
Я пытался сделать это в шаблоне html, но не удалось. Итак, моя следующая идея состоит в том, чтобы сделать виджет каким-то образом зависимым от модели, которую он отображает, то есть в виде псевдокода:
class Meta:
widgets = {'discount': forms.TextInput(attrs={'readonly': currentModel.type == 0})}
Есть ли правильный способ сделать что-то подобное? заранее спасибо