Django ialah rangka kerja web Python yang sangat boleh dikembangkan yang direka untuk membantu pembangun membina aplikasi web dengan lebih pantas dan mudah. Dari masa ke masa, Django terus membangun dan mengemas kini, dan versi stabil terkini ialah siri 3.x. Artikel ini akan membandingkan perbezaan utama antara versi Django 1.x, 2.x dan 3.x dan menyediakan beberapa contoh kod khusus.
Django 1.x ialah versi yang paling awal dikeluarkan Dalam kemas kini berikutnya, Django telah berkembang secara beransur-ansur menjadi rangka kerja Web yang kuat dan stabil. Berikut ialah beberapa ciri utama dan contoh kod versi ini:
Tetapan projek: Django 1.x menggunakan fail settings.py untuk mengkonfigurasi projek, yang termasuk sambungan pangkalan data, tetapan aplikasi, dsb. Berikut ialah contoh tetapan.py yang mudah:
DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': 'mydatabase', 'USER': 'myuser', 'PASSWORD': 'mypassword', 'HOST': 'localhost', 'PORT': '3306', } } INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', ]
Konfigurasi URL: Django 1.x mengkonfigurasi penghalaan URL melalui fail urls.py. Berikut ialah contoh urls.py mudah:
from django.contrib import admin from django.urls import include, path urlpatterns = [ path('admin/', admin.site.urls), path('blog/', include('blog.urls')), ]
Versi Django 2.x memperkenalkan beberapa perubahan penting dan ciri baharu untuk menyesuaikan diri dengan lebih baik kepada keperluan pembangunan web moden. Berikut ialah beberapa ciri utama dan contoh kod versi ini:
Tetapan projek: Django 2.x mengekalkan fail settings.py yang serupa tetapi memperkenalkan backend pangkalan data baharu seperti PostgreSQL sebagai tetapan lalai. Berikut ialah contoh settings.py yang mudah:
DATABASES = { 'default': { 'ENGINE': 'django.db.backends.postgresql', 'NAME': 'mydatabase', 'USER': 'myuser', 'PASSWORD': 'mypassword', 'HOST': 'localhost', 'PORT': '5432', } } INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'blog', ]
Konfigurasi URL: Django 2.x mengekalkan struktur fail urls.py yang serupa, tetapi memperkenalkan fungsi path() untuk menggantikan fungsi url() lama, menjadikan kod lebih Boleh dibaca dan ringkas. Berikut ialah contoh urls.py mudah:
from django.contrib import admin from django.urls import path, include urlpatterns = [ path('admin/', admin.site.urls), path('blog/', include('blog.urls')), ]
Siri Django 3.x ialah versi stabil terkini pada masa ini, memperkenalkan beberapa perubahan dan peningkatan penting. Berikut ialah beberapa ciri utama dan contoh kod versi ini:
Tetapan projek: Django 3.x mengekalkan struktur fail settings.py yang serupa, tetapi pengumpulan sambungan pangkalan data dihidupkan secara lalai, meningkatkan prestasi sambungan pangkalan data. Berikut ialah contoh settings.py yang mudah:
DATABASES = { 'default': { 'ENGINE': 'django.db.backends.postgresql', 'NAME': 'mydatabase', 'USER': 'myuser', 'PASSWORD': 'mypassword', 'HOST': 'localhost', 'PORT': '5432', 'CONN_MAX_AGE': 600, # 设置连接池最大寿命为10分钟 } } INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'blog', ]
Konfigurasi URL: Django 3.x mengekalkan struktur fail urls.py yang serupa dan memperkenalkan beberapa ciri baharu, seperti sokongan untuk anotasi jenis parameter laluan. Berikut ialah contoh urls.py mudah:
from django.contrib import admin from django.urls import path, include urlpatterns = [ path('admin/', admin.site.urls), path('blog/<int:id>/', include('blog.urls')), ]
Ringkasan:
Versi Django yang berbeza mempunyai peningkatan dan peningkatan dalam fungsi dan prestasi. Jika anda sedang membangunkan projek baharu dari awal, adalah disyorkan untuk memilih versi stabil terkini 3.x untuk menikmati prestasi yang lebih baik dan lebih banyak ciri baharu. Untuk projek yang sudah menggunakan versi lama, anda boleh berhijrah secara beransur-ansur ke versi yang lebih baharu dan membuat pelarasan yang sepadan.
Di atas ialah beberapa perbezaan utama dan contoh kod untuk versi Django 1.x, 2.x dan 3.x. Dengan mempelajari perbezaan antara versi ini, pembangun boleh lebih memahami sejarah pembangunan rangka kerja Django dan memilih versi yang sesuai mengikut keperluan mereka. Tidak kira versi yang anda pilih, Django menyediakan alatan yang cekap dan berkuasa untuk membina aplikasi web yang hebat.
Atas ialah kandungan terperinci Perbandingan versi Django: Apakah perbezaan antara 1.x, 2.x dan 3.x?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!