stefanfoulis / django -phonenumber-field отображает формат номера телефона в шаблоне - PullRequest
0 голосов
/ 09 марта 2020

Я пытаюсь выяснить, как отобразить номер телефона, используя stefanfoulis / django -phonenumber-field. У меня установлен stefanfoulis / django -phonenumber-field [phonenumberslite]. В моем файле настроек у меня есть:

PHONENUMBER_DB_FORMAT = "NATIONAL"
PHONENUMBER_DEFAULT_REGION = "US"

В моей модели у меня есть:

phone_number = PhoneNumberField(blank=True)

В моей форме у меня есть:

phone_number = PhoneNumberField(max_length=25,required=False)

И в моем шаблоне У меня есть:

{{ myform.phone_number }}

Я могу ввести номер телефона в различных форматах (831-555-5555, 831-555-5555, 831.555.5555), и он правильно сохраняется в базе данных как + 18315555555.

Но когда я использую поле формы в шаблоне, оно всегда отображается как +18315555555. Я бы хотел, чтобы он отображался как 831-555-5555 или (831) 555-5555. Как сделать так, чтобы номер телефона отображался в одном из этих форматов в моем шаблоне? Есть ли модификатор тега?

ОБНОВЛЕНИЕ: Как оказалось, я устанавливал начальное значение поля формы в методе init , и мне нужно было установить его как as_national. Сейчас он установлен на (831) 555-5555.

1 Ответ

0 голосов
/ 09 марта 2020

Поскольку ваша форма переопределяет поле, вам нужно переопределить регион. Или вы можете удалить явное определение phone_number в вашей форме.

phone_number = PhoneNumberField(max_length=25, required=False, region="US")
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...