Django - USStateField vs USZipCodeField

时间:2011-01-17 16:53:08

标签: python django django-models django-forms

为什么其中一个是模型而另一个是表格?例如,为了使其行为正确,这是我的模型:

class UserProfile(models.Model):
    state = USStateField()
    zip = models.CharField(max_length=30)

这是我的表格:

class UserProfileForm(forms.ModelForm):
    zip = USZipCodeField()

我认为将它们作为USZipCodeField模型是有意义的,这样代码就是对称的

1 个答案:

答案 0 :(得分:2)

我想您可能只想直接使用USStateField

from django.contrib.localflavor.us.forms import USStateField

class UserProfileForm(forms.ModelForm):
    state = USStateField()
    zip = USZipCodeField()
    class Meta:
        model = UserProfile

是否有理由对USZipCodeField字段使用zip,而对您的州使用forms.ChoiceField