Почему я не могу установить для 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).

Другие вопросы по тегам