Почему я не могу установить для USPhoneNumberField модели Django значение null=True, пусто =True?
Моя модель 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, как я делаю для многих других полей?
1 ответ
Решение
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).