que*_*est 3 django django-forms
有这个禁用属性。但我无法将其应用于模型表单字段。我不知道该怎么做。我可以轻松地将它添加到 forms.Form 中。但是因为我使用的是小部件,所以我不知道在哪里插入它。
https://docs.djangoproject.com/en/2.0/ref/forms/fields/#disabled
class TestForm(forms.ModelForm):
class Meta:
model = Test
fields = ['date']
widgets = {'date': forms.TextInput(attrs={'readonly': 'readonly'})}
Run Code Online (Sandbox Code Playgroud)
当我想在创建 . 并且在编辑时禁用了某些字段。
我的环境: Python 3,Django 2.1
我的表格:
class AddInvoiceForm(forms.ModelForm):
disabled_fields = ['inv_type', 'report', 'subsidiary']
class Meta:
model = models.Invoice
fields = ('inv_type', 'report', 'subsidiary', 'rate_card', 'reviewed')
def __init__(self, *args, **kwargs):
super(AddInvoiceForm, self).__init__(*args, **kwargs)
instance = getattr(self, 'instance', None)
if instance and instance.pk:
for field in self.disabled_fields:
self.fields[field].disabled = True
else:
self.fields['reviewed'].disabled = True
Run Code Online (Sandbox Code Playgroud)
class TestForm(forms.ModelForm):
date = forms.CharField(disabled=True)
class Meta:
model = Test
fields = ['date']
widgets = {
'date': forms.TextInput(attrs={'readonly': 'readonly'}),
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7258 次 |
| 最近记录: |