ในบทความนี้เราจะมาดูกันว่าอะไรคือ humanizer และวิธีใช้ใน Django Humanizer เป็นตัวกรองใน Django ที่ใช้เพื่อเพิ่มสัมผัสของมนุษย์ในโครงการ มันเป็นหนึ่งในฟิลเตอร์ที่ดีที่สุดของ Django
Humanizer ใช้เพื่อแปลงตัวเลขจากตัวเลขเป็นคำ หรือเพิ่มเครื่องหมายจุลภาคระหว่างตัวเลข หรือแปลงตัวเลขเป็นล้านหรือพันล้าน มาดูตัวอย่างและทำความเข้าใจวิธีใช้งานกัน
ตัวอย่าง
สร้างโปรเจ็กต์ Django และแอพ
กำหนดค่า URL โครงการ -
from django.contrib import adminfrom django.urls import path,includeurlpatterns =[ path('',include("humanizeproj.urls")), path('admin/', admin.site.urls),]ก่อน>ที่นี่เราตั้งค่า url . ของเรา สำหรับแอปของเรา
ใน urls.py . ของแอป , เพิ่มต่อไปนี้ −
จากเส้นทางการนำเข้า django.urls,includefrom นำเข้า viewsurlpatterns =[ เส้นทาง ('', views.home, name="home")]ใน URL ของแอป เราแสดงมุมมองของเรา
สร้าง เทมเพลต โฟลเดอร์และกำหนดค่าใน settings.py −
TEMPLATES =[ { 'BACKEND':'django.template.backends.django.DjangoTem plates', 'DIRS':[os.path.join(BASE_DIR, 'humanizeproj/templates')], 'APP_DIRS':จริง , 'ตัวเลือก':{ 'context_processors':[ 'django.template.context_processors.debug', 'django.template.context_processors.request', 'django.contrib.auth.context_processors.auth', 'django.contrib.messages context_processors.messages', ], }, },]ในที่นี้เรากำหนดโฟลเดอร์เทมเพลตเพื่อให้เข้าถึงเทมเพลตได้ดียิ่งขึ้น
นอกจากนี้ อย่าลืมเพิ่ม home.html ในนั้น. ตอนนี้อย่าเพิ่งเขียนอะไรลงไป
ใน settings.py ให้เพิ่มแอปและตัวกรองของคุณ -
INSTALLED_APPS =[ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib .staticfiles', # จำเป็นต้องเพิ่ม "humanizeproj", # นี่คือชื่อแอปของฉัน "django.contrib.humanize"]เราได้เพิ่มส่วนสนับสนุนแอปและโมดูลของเราที่นี่
ใน views.py เพิ่มบรรทัดต่อไปนี้ −
จาก django.shortcuts import render# สร้างมุมมองของคุณ here.def home(request):return render(request,"home.html")ที่นี่เราแสดงส่วนหน้าซึ่งก็คือ home.html
ใน home.html , เพิ่ม −
Tut {% load humanize %}Numbers (ฟังก์ชัน apnumber) :
{{ "1" | apnumber}}
{{"2" | apnumber}}
{{"10" | apnumber}}
ลูกน้ำจำนวนเต็ม:
{{"1000" | intcomma}}
{{"20000" | intcomma}}
{{"10000000" | intcomma}}
คำจำนวนเต็ม:
{{"1000000000" | intword}}
{{"20000000000" | intword}}
{{"10000000" | intword}}
หมายเลขประจำตัว ใช้สำหรับแปลงตัวเลขเป็นคำ intcoma ใช้สำหรับเติมลูกน้ำระหว่างตัวเลข และ intword ใช้ในการแปลงจำนวนเต็มเป็นล้านหรือพันล้าน
ผลลัพธ์