我的Django模型:
from localflavor.us.forms import USPhoneNumberField
class Profile(models.Model):
cellPhone = USPhoneNumberField(null=True, blank=True,)
当我执行manage.py syncdb时,这会给我以下错误:
cellPhone = USPhoneNumberField(null=True, blank=True,)
TypeError: __init__() got an unexpected keyword argument 'null'
如果不允许我将此字段声明为null = True,那么如何将此字段设为可选字段,就像我对其他许多字段一样?
答案 0 :(得分:5)
USPhoneNumberField
是form
类型,而不是模型类型
用法(通常)是:
class Profile(models.Model):
cellPhone = models.CharField(max_length=20, null=True, blank=True,)
和forms.py
class ProfileForm(forms.Form): #or forms.ModelForm
cellPhone = forms.USPhoneNumberField(...)
class localflavor.us.models.PhoneNumberField(* args,** kwargs) CharField,用于检查该值是否为有效的美国式电话号码(格式为XXX-XXX-XXXX)。