Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

จะสร้างฟิลด์ Country ใน Django ได้อย่างไร?


หากคุณต้องการเพิ่มฟิลด์ตำแหน่งในแบบฟอร์มหรือฐานข้อมูล คุณสามารถทำได้โดยใช้ charfield แต่ก็ยังไม่ใช่ความคิดที่ดี ใน Django เรามีแพ็คเกจของบุคคลที่สามชื่อ 'django-countries' ที่ให้สนามประเทศ ในบทความนี้ เรามาดูวิธีใช้ django-countries . กัน เพื่อเพิ่มฟิลด์ Country ใน Django

ขั้นแรก สร้างโปรเจ็กต์ Django และแอป

เพิ่มแอปใน INSTALLED_APPS และตั้งค่า url .

ติดตั้ง django-countries โมดูล −

pip install django-countries

ใน settings.py , เพิ่มสิ่งนี้ −

INSTALLED_APPS += [ 'django_countries']

ตัวอย่าง

ใน urls.py ของแอป −

from django.urls import path
from . import views

urlpatterns = [
   path('', views.home, name="home"),
]

ขั้นแรกให้ตั้งค่า URL ของคุณ

ใน views.py

from django.shortcuts import render
from django import forms
from .models import Data
class SalaryForm(forms.ModelForm):
   class Meta:
      model=Data
      fields="__all__"
def home(request):
   if request.method=='POST':
      form=SalaryForm(request.POST)
      if form.is_valid():
         form.save()

   else:
      form=SalaryForm()
   return render(request,'home.html',{'form':form})

ที่นี่เราสร้างแบบฟอร์มและแสดงผลใน GET ตัวจัดการคำขอ ของมุมมองของเรา ในตัวจัดการ POST เราบันทึกข้อมูลแบบฟอร์ม

สร้างโฟลเดอร์เทมเพลตในไดเรกทอรีแอปและ home.html ในนั้น. ใน home.html

<!DOCTYPE html>
<html>
   <head>
      <title>
         TUT
      </title>
      <style>

      </style>
   </head>
   <body>
      <h2>FORM</h2>
      <form action="/" method="post">
         {% csrf_token %}
         {{ form }}
         <input type="submit" value="Submit">
      </form>
   </body>
</html>

นี่คือ html ส่วนหน้าของแบบฟอร์มของเรา

ใน models.py

from django.db import models
from django_countries.fields import CountryField

# Create your models here.
class Data(models.Model):
   Name=models.CharField(max_length=100)
   salary = models.CharField(max_length=20)
   country_of_work = CountryField(blank=True)

ที่นี่เราสร้างแบบจำลองที่เราเพียงแค่เพิ่มฟิลด์ประเทศซึ่งจะเก็บข้อมูลประเทศ

ตอนนี้ ทำการโยกย้ายและโยกย้าย คุณทำเสร็จแล้ว ตอนนี้คุณสามารถดำเนินการตรวจสอบผลลัพธ์ได้

ผลลัพธ์


จะสร้างฟิลด์ Country ใน Django ได้อย่างไร?