Đầu tiên, cài đặt gói "Django-Phonenumber-Field" với lệnh bên dưới:"django-phonenumber-field" package with the command below:
pip install django-phonenumber-field[phonenumbers]
Sau đó, đặt "phonenumber_field" thành installed_apps trong "Settings.py":"phonenumber_field" to INSTALLED_APPS in "settings.py":
# "settings.py"
INSTALLED_APPS = [
...
"phonenumber_field",
...
]
Sau đó, đặt một trường với "phonenumberfield []" trong "model.py":"PhoneNumberField[]" in "models.py":
# "models.py"
from django.db import models
from phonenumber_field.modelfields import PhoneNumberField
class Contact[models.Model]:
phone = PhoneNumberField[]
Sau đó, đăng ký "liên hệ" trong "admin.py":"Contact" in "admin.py":
# "admin.py"
from django.contrib import admin
from .models import Contact
@admin.register[Contact]
class ContactAdmin[admin.ModelAdmin]:
pass
Sau đó, chạy lệnh bên dưới:
python manage.py makemigrations && python manage.py migrate
Bây giờ, trường cho số điện thoại được tạo như hình dưới đây:
Ngoài ra, gán tiện ích "PhonenumberPrefixWidget []" cho trường dưới dạng tùy chỉnh và gán biểu mẫu tùy chỉnh cho quản trị viên như hiển thị bên dưới:the widget "PhoneNumberPrefixWidget[]" to the field in a custom form and assign the custom form to the admin as shown below:
# "admin.py"
from django.contrib import admin
from .models import Contact
from django import forms
from phonenumber_field.widgets import PhoneNumberPrefixWidget
class ContactForm[forms.ModelForm]:
class Meta:
widgets = {
'phone': PhoneNumberPrefixWidget[],
}
@admin.register[Contact]
class ContactAdmin[admin.ModelAdmin]:
form = ContactForm
Bây giờ, với mã quốc gia, trường cho số điện thoại được tạo
Và, bạn có thể đặt mã quốc gia ban đầu như ban đầu = 'us' thành "phonenumberprefixwidget []" như được hiển thị bên dưới. *Mã quốc gia ban đầu phải được viết hoa:initial='US' to "PhoneNumberPrefixWidget[]" as shown below. *Initial country code must be uppercase:
# "admin.py"
from django.contrib import admin
from .models import Contact
from django import forms
from phonenumber_field.widgets import PhoneNumberPrefixWidget
class ContactForm[forms.ModelForm]:
class Meta:
widgets = { # Here
'phone': PhoneNumberPrefixWidget[initial='US'],
}
@admin.register[Contact]
class ContactAdmin[admin.ModelAdmin]:
form = ContactForm
Bây giờ, với mã quốc gia ban đầu "Hoa Kỳ" đã chọn, trường cho số điện thoại được tạo:the initial country code "US" selected, the field for a phone number is created:
Bạn cũng có thể đặt mã quốc gia ban đầu với "phonenumber_default_region" trong "settings.py" như được hiển thị bên dưới nhưng tôi đề nghị đặt mã quốc gia ban đầu với ban đầu = 'us' thành "phonenumberprefixwidget [] như tôi đã thực hiện ở trên vì sử dụng "Phonenumber_default_region" Đôi khi không hiển thị số điện thoại đã lưu trong quản trị viên Django:"PHONENUMBER_DEFAULT_REGION" in "settings.py" as shown below but I recommand to set an initial country code with initial='US' to "PhoneNumberPrefixWidget[]" as I've done above because using "PHONENUMBER_DEFAULT_REGION" sometimes doesn't display saved phone numbers in Django Admin:
# "settings.py"
PHONENUMBER_DEFAULT_REGION = "US"
Mô tả dự án
Một thư viện Django giao diện với Python-Phonenumbers để xác nhận, in đẹp và chuyển đổi số điện thoại. Python-Phonenumbers là một cổng của Thư viện Google Libphonenumber, nơi cung cấp năng lượng cho việc xử lý số điện thoại của Android.python-phonenumbers is a port of Google’s libphonenumber library, which powers Android’s phone number handling.
Tài liệu
//django-phonenumber-field.readthedocs.io/
Chạy thử nghiệm
Tox cần được cài đặt. Để chạy toàn bộ ma trận thử nghiệm với các phiên dịch viên Python có sẵn tại địa phương và tạo báo cáo bảo hiểm kết hợp:
tox
Chạy một kết hợp cụ thể:
tox -e py310-djmain,py39-djmain
Tải tập tin
Tải xuống tệp cho nền tảng của bạn. Nếu bạn không chắc chắn nên chọn cái nào, hãy tìm hiểu thêm về việc cài đặt các gói.
Phân phối nguồn
Phân phối xây dựng
Một thư viện Django giao diện với Python-Phonenumbers để xác nhận, in đẹp và chuyển đổi số điện thoại. django-phonenumber-field
2 là một cổng của Thư viện Libphonenumber của Google, cung cấp năng lượng cho việc xử lý số điện thoại của Android.# "settings.py"
INSTALLED_APPS = [
...
"phonenumber_field",
...
]
Tài liệu
//django-phonenumber-field.readthedocs.io/
Chạy thử nghiệm
Tox cần được cài đặt. Để chạy toàn bộ ma trận thử nghiệm với các phiên dịch viên Python có sẵn tại địa phương và tạo báo cáo bảo hiểm kết hợp:
# "settings.py"
INSTALLED_APPS = [
...
"phonenumber_field",
...
]
0Chạy một kết hợp cụ thể:
# "settings.py"
INSTALLED_APPS = [
...
"phonenumber_field",
...
]
1