我有一个模型,可以让我在一些预定义值之间进行选择。
in models.py
class Customer(models.Model):
GENDER = ( ('m' , 'Male') , ('f' , 'Female') )
PersonGender = models.CharField(max_length=20,choices=GENDER)
我有一个 ModelForm 来处理我的表单,没关系,但由于某些原因我想定义另一个 ModelForm 来更改“GENDER”值。
我在 forms.py 中定义了另一个 ModelForm
GENDER = (('male' , 'Male' ), ('female' , 'Female') )
class MySecondaryForm(forms.ModelForm):
class Meta:
model = Customer
fields = '__all__'
widgets = {
'PersonGender': forms.Select(choices=GENDER)
}
使用此配置下拉菜单不会更改为新值。
我可以使用以下配置修复它:
GENDER = (('male' , 'Male' ), ('female' , 'Female') )
class MySecondaryForm(forms.ModelForm):
PersonGender = forms.ChoiceField(choices=GENDER)
class Meta:
model = Customer
fields = '__all__'
使用上述配置下拉值更改为我的新值,但我想知道如何在“小部件”的元类内更改它?