Django

Cara Menggunakan Model di Django?

Cara Menggunakan Model di Django?
Model digunakan dalam aplikasi Django untuk membuat aplikasi web dengan pangkalan data. Ini adalah ciri bawaan Django untuk membuat jadual pangkalan data relasional dengan menentukan struktur jadual untuk projek Django. Setiap atribut model menunjukkan jenis medan jadual tertentu. Kelas model memerlukan untuk menentukan setiap jadual pangkalan data. Umumnya, nama kelas model ditentukan dalam bentuk tunggal, dan Django akan membuat nama jadual dalam bentuk jamak berdasarkan nama kelas model. Sebarang modifikasi jadual yang dirancang oleh model, seperti membuat atau mengemas kini atau menghapus, dapat dilakukan dengan mudah menggunakan panel admin Django. Tugas yang sama juga dapat dilakukan dari baris perintah python. Membuat model Django yang akan membuat dua jadual hubungan dan bagaimana ia dapat diakses menggunakan dashboard Pentadbiran Django ditunjukkan dalam tutorial ini.

Prasyarat

Sebelum mempraktikkan contoh tutorial ini, anda harus menyelesaikan tugas-tugas berikut.

  1. Pasang Django versi 3+ di Ubuntu 20+ (lebih baik)
  2. Buat projek Django
  3. Jalankan pelayan Django untuk memeriksa pelayan berfungsi dengan betul atau tidak.

Sediakan aplikasi Django:

Jalankan arahan berikut untuk membuat aplikasi Django bernama aplikasi model.

$ python3 menguruskan.py startapp modelapp

Jalankan arahan berikut untuk membuat pengguna untuk mengakses pangkalan data Django. Sekiranya anda telah membuat pengguna sebelumnya, maka anda tidak perlu menjalankan perintah.

$ python3 menguruskan.py createuperuser

Tambahkan nama aplikasi di DIPASANG_APP sebahagian py fail.

INSTALLED_APPS = [

aplikasi model
]

Buat folder bernama templat di dalam aplikasi model folder dan tetapkan templat lokasi aplikasi di TEMPAT sebahagian py fail.

TEMPLATES = [

… .
'DIRS': ['/ rumah / fahmida / django_pro / modelapp / templat'],
… .
,
]

Buat model untuk jadual pangkalan data:

Buka model.py fail dari aplikasi model folder dan tambahkan skrip berikut untuk menentukan struktur dua jadual hubungan. Cikgu kelas ditakrifkan untuk membuat jadual yang dinamakan guru dengan nama, jabatan, e-mel, dan telefon ladang. Kursus kelas ditakrifkan untuk membuat jadual yang dinamakan kursus dengan kod, nama, kredit, dan cikgu ladang. Di sini, cikgu bidang Kursus jadual adalah kunci asing yang akan muncul dari Guru meja.

model.py

# Modul model import
dari django.model import db
# Buat kelas untuk menentukan struktur jadual Guru
Guru kelas (model.Model):
nama = model.CharField (panjang maksimum = 50)
jabatan = model.CharField (panjang maksimum = 20)
e-mel = model.Bidang E-mel (max_length = 100)
telefon = model.CharField (panjang maksimum = 50)
# Buat kelas untuk menentukan struktur jadual Kursus
Kursus kelas (model.Model):
kod = model.CharField (panjang maksimum = 10)
nama = model.CharField (panjang maksimum = 50)
kredit = model.FloatField ()
guru = model.ForeignKey (Teacher, on_delete = model.CASCADE)

Jalankan penghijrahan arahan untuk membuat migrasi baru berdasarkan perubahan yang dibuat oleh model.

$ python3 menguruskan.py makemigrations model aplikasi

Jalankan berhijrah perintah untuk melaksanakan perintah SQL dan membuat semua jadual dalam pangkalan data yang ditentukan dalam model.py fail.

$ python3 menguruskan.py berhijrah

Ubah suai kandungan pentadbir.py fail dengan kandungan berikut. Di sini, Cikgu dan Kursus kelas model didaftarkan dengan menggunakan daftar () kaedah untuk memaparkan Guru dan Kursus jadual di papan pemuka pentadbiran Django.

pentadbir.py

# Import modul pentadbir
dari django.admin import contrib
# Import model
dari .model import Guru
dari .model import Kursus
# Daftarkan model
pentadbir.tapak.daftar (Guru)
pentadbir.tapak.daftar (Kursus)

Tetapkan URL untuk log masuk pentadbir:

Laluan untuk log masuk pentadbir ditentukan dalam url.py fail untuk sebarang aplikasi Django secara lalai. Sekiranya jalan tidak ditentukan dalam fail, ubah url.py fail dengan skrip berikut untuk membuka Papan Pemuka Pentadbiran Django terbina dalam untuk jalan ' pentadbir /'.

url.py

# Import modul pentadbir
dari django.admin import contrib
# Modul laluan import
dari django.laluan import url
# Tentukan jalan untuk admin
urlpatterns = [
jalan ('admin /', pentadbir.tapak.url),
]

Masukkan rekod dalam jadual:

Jalankan URL berikut dari penyemak imbas untuk membuka Papan Pemuka Pentadbiran Django.

http: // localhost: 8000 / pentadbir

Jadual berikut akan ditunjukkan untuk aplikasi model. Sebarang rekod jadual dapat dibaca, dimasukkan, dikemas kini, dan dihapus dari halaman ini.

Klik pada jadual Guru untuk memasukkan beberapa rekod ke dalam jadual. Borang dengan medan yang diperlukan seperti gambar berikut akan muncul untuk memasukkan rekod. Terdapat tiga butang dalam bentuk untuk memasukkan rekod dalam jadual. 'Simpan dan tambah yang lainbutang 'digunakan untuk memasukkan rekod dan membuka borang sekali lagi untuk memasukkan rekod seterusnya. The 'Simpan dan teruskan penyuntinganbutang 'digunakan untuk memasukkan catatan dan membuka kembali borang dengan data untuk diedit. The 'Jimatbutang 'digunakan untuk memasukkan rekod sahaja. Setiap borang penyertaan akan mengandungi tiga butang ini.

Setelah memasukkan dua rekod guru, maklumat berikut akan muncul di penyemak imbas.

Borang berikut akan muncul setelah mengklik pada jadual kursus. Guru itu bidang Kursus jadual adalah berkaitan dengan Guru jadual dengan kunci asing. Senarai dropdown dengan objek Guru yang disisipkan akan muncul untuk menambahkan data dalam bidang ini dari senarai.

Setelah memasukkan tiga rekod ke dalam jadual Kursus, maklumat berikut akan muncul di penyemak imbas. Sekiranya anda ingin mengubah sebarang rekod Jadual Kursus atau Guru, kemudian klik pada objek tersebut untuk membuka borang edit dengan data yang ada.

Anda boleh memaparkan rekod kedua-dua jadual di penyemak imbas dengan menggunakan pemandangan.py fail dan membuat kuil di lokasi templat yang ditentukan.  Anda boleh menyemak tutorial Django View dan Django Template untuk ini.

Kesimpulannya

Data jadual dapat diakses atau diubah oleh Django Administration Dashboard, seperti yang dijelaskan dalam tutorial ini. Tetapi data dapat dimasukkan ke dalam tabel dengan menulis skrip di pandangan.py fail dengan atau tanpa menggunakan fail templat.

Cara menangkap dan streaming sesi permainan anda di Linux
Pada masa lalu, bermain permainan hanya dianggap sebagai hobi, tetapi seiring dengan berjalannya waktu, industri permainan menyaksikan pertumbuhan yan...
Permainan Terbaik untuk Dimainkan dengan Penjejakan Tangan
Oculus Quest baru-baru ini memperkenalkan idea hebat penjejakan tangan tanpa pengawal. Dengan jumlah permainan dan aktiviti yang semakin meningkat yan...
Cara Menunjukkan Overlay OSD dalam Aplikasi dan Permainan Linux Skrin Penuh
Bermain permainan skrin penuh atau menggunakan aplikasi dalam mod skrin penuh bebas gangguan dapat memisahkan anda dari maklumat sistem yang relevan y...