Python 我有一个Django模型表单,其中添加了字段和字段限制。并非所有字段都显示
我的模型:Python 我有一个Django模型表单,其中添加了字段和字段限制。并非所有字段都显示,python,django,forms,Python,Django,Forms,我的模型: class CustomerBillingForm(ModelForm): expiration_month = models.IntegerField(choices=(1,2,3,4,5,6,7,8,9,10,11,12)) expiration_year = models.IntegerField(max_length=4) card_number = models.IntegerField(max_length=16) card_cvv =
class CustomerBillingForm(ModelForm):
expiration_month = models.IntegerField(choices=(1,2,3,4,5,6,7,8,9,10,11,12))
expiration_year = models.IntegerField(max_length=4)
card_number = models.IntegerField(max_length=16)
card_cvv = models.IntegerField(max_length=4)
class Meta:
model = Customer
fields = ['billing_first_name', 'billing_last_name', 'billing_address',
'billing_address_2', 'billing_city', 'billing_state',
'billing_zip', 'billing_country']
当我在模板中使用此表单时,我没有得到4个自定义定义的字段,只有“字段”列表中的字段。我无法将前4个字段添加到字段列表中。我的选项是什么?如果在
Meta
中使用字段
,则必须明确列出要使用的所有字段,即使是添加到表单中但不在模型中的字段
您不能更改
Meta
中的字段是什么意思?能否更改表单上的\uuuuu init\uuuu
函数?您还可以对此表单进行子类化,并覆盖字段
或\uuuuu init\uuuuu
使用正确的字段类-在本例中,使用表单.IntegerField
而不是模型.IntegerField
。您还需要更改参数-例如,将expiration\u month
的小部件重写为小部件,对于试图设置最大长度的小部件,您需要将maxlength
参数传递给小部件,并定义要使用的任何验证。当我按名称添加字段时,它会在FieldError上使开发服务器崩溃。所以不,这不是一个选择。