0
私はいくつかの定義済みの値を選択できるモデルを持っています。Django ModelFormウィジェットの選択肢の値を置き換えます。
in models.py
class Customer(models.Model):
GENDER = (('m' , 'Male') , ('f' , 'Female'))
PersonGender = models.CharField(max_length=20,choices=GENDER)
と私は私のフォームを処理するためのModelFormを持っている、それは大丈夫だが、私はいくつかの理由で「GENDER」の値を変更するには、別のModelFormを定義したいです。
私は、新しい値に変更この設定ドロップダウンメニューでforms.py
GENDER = (('male' , 'Male'), ('female' , 'Female'))
class MySecondaryForm(forms.ModelForm):
class Meta:
model = Customer
fields = '__all__'
widgets = {
'PersonGender': forms.Select(choices=GENDER)
}
で別のModelFormを定義していません。私の新しいに上記の設定ドロップダウン値の変化と
GENDER = (('male' , 'Male'), ('female' , 'Female'))
class MySecondaryForm(forms.ModelForm):
PersonGender = forms.ChoiceField(choices=GENDER)
class Meta:
model = Customer
fields = '__all__'
を、しかし、私はそれが「ウィジェット」にメタクラス内で変更する方法を知りたい:
私は、以下の設定でそれを修正することができますか?
GENDERから
引用符で囲まれたコード、私はこの中を上書きしたいですforms.pyとMetaウィジェットの属性の中にあります。 – Arash
答えの変更を参照してください – mbieren
はい、私は "def"メソッドと私が質問で言及した別の方法で値を置き換えることができます知っているが、私は他のを保持するメタクラス内のウィジェットを定義する方法を知りたい必要なものや助けのテキストなどのモデルで定義された要素。 – Arash