Arsitektur Django: Sistem Kerja Kerangka MVT Dijelaskan

Diterbitkan: 2020-12-23

Daftar isi

pengantar

Django adalah salah satu kerangka kerja aplikasi web termudah dan efisien yang ditulis dalam bahasa Python. Kerangka kerja ini gratis dan sumber terbuka dan karenanya menggantikan penggunaan PHP, servlet, dll. untuk mengembangkan backend situs web apa pun. Ini dikembangkan oleh Django Software Foundation pada 15 Juli 2005.

Django memberikan keuntungan yang tak terkalahkan dari kemudahan pembuatan basis data untuk para pengembang yang bekerja pada kerangka kerja pengembangan web yang kompleks. Di atas semua ini, Django menyediakan salah satu aliran data tercepat dan juga memastikan bahwa keamanan tidak terganggu.

Arsitektur Django terutama mengikuti kerangka kerja MVT, seperti yang dijelaskan di bawah ini.

  • M: Model
  • V: Lihat
  • T: Template

MVT dapat dilihat sebagai alternatif dari framework MVC yang terdiri dari Model, View, dan Controller. Perbedaan utama antara MVT dan MVC adalah bahwa arsitektur Django menangani tanggung jawab yang ditangani oleh bagian pengontrol arsitektur MVC. Django menggunakan templatnya untuk melakukan semua tugas terkait pengontrol. Dengan kata yang lebih sederhana, templat berisi konten yang merupakan campuran dari Bahasa Templat Django (juga dikenal sebagai DTL) dan HTML (Bahasa Markup Teks Hiper).

Template, seperti yang diperkenalkan di atas, bertanggung jawab atas semua tindakan dan penyesuaian terkait UI bersama dengan aktivitas terkait arsitektur aplikasi. Mendasari template, kami memiliki "View". Tampilan mengambil perintah dari pemrosesan logis dan aktivitas pengambilan keputusan aplikasi dan juga berkomunikasi dengan "Model" untuk mengambil titik data masing-masing dan karenanya mengubah template sesuai kebutuhan.

Seperti dibahas di atas, Django sendiri bertindak sebagai pengontrol yang mengambil URL yang terhubung ke bagian tampilan aplikasi dan akhirnya mengirimkan tanggapan pengguna masing-masing ke aplikasi. Ini adalah interaksi keseluruhan yang terjadi di dalam arsitektur Django MVT.

Harus Dibaca: Proyek Django di Github

Model

Di Django, model memainkan peran penting dalam menghubungkan seluruh arsitektur ke database. Dalam keseluruhan proses ini, setiap model terhubung ke satu tabel di dalam database. Metode dan bidang yang terkait dengan proses ini dideklarasikan dalam file terpisah yang umumnya didefinisikan sebagai model.py.

Setelah proses penautan selesai dan semuanya terhubung ke database, kami akan dapat menilai setiap baris atau lebih tepatnya, merekam dari tabel masing-masing dan bahkan dapat melakukan operasi DML yang berbeda sesuai pada tabel.

Django.db.models adalah subkelas yang digunakan dalam kasus ini. Kita dapat menggunakan fungsi impor default Python sebagai "dari model impor django.db".

Setelah mendefinisikan kolom, tabel, dan record database, kita akan mengambil data yang terhubung ke aplikasi dengan menyebutkan pemetaan di settings.py.

Melihat

Logika keseluruhan dari kerangka aliran data didefinisikan di bagian model ini. Seluruh kode didefinisikan dalam file views.py.

Tugas lain dari file tampilan adalah mengirim tanggapan ke masing-masing pengguna setiap kali aplikasi digunakan. Dalam istilah awam, kita cukup menegaskan bahwa view.py mampu menangani HttpResponse.

Ketika file view dibuat, pertanyaan berikutnya yang muncul di benak kita adalah bagaimana menautkan file ini ke aplikasi kita? Bagaimana kita memastikan bahwa kerangka kerja akan mengerti kapan harus menampilkan tampilan tertentu? Pemahaman ini dapat dibangun dengan memetakan views.py dalam file urls.py terpisah. Seperti yang telah kita bahas di atas, urls.py bertanggung jawab untuk melacak semua halaman yang berbeda dan karenanya memetakan masing-masing halaman.

Templat

Kapan pun kami ingin membuat situs web dinamis untuk operasi atau fungsi yang kompleks, template membantu kami mencapainya dengan cara yang mudah. Dengan kata sederhana, situs web dinamis mengirim dan menerima data dinamis atau berubah. Data dinamis biasanya dikaitkan dengan skenario di mana setiap pengguna disajikan dengan data pribadinya sendiri. Misalnya, postingan di website media sosial seperti Facebook, Instagram, Twitter, dll atau transaksi yang berbeda dalam produk fintech, dll.

Template diatur dalam file settings.py yang berada di bawah INSTALLED_APPS. Oleh karena itu kode python hanya akan mencari file terkait di bawah subdirektori template. Ada 2 opsi untuk melakukannya— kita dapat membuat file HTML atau cukup mengimpor halaman web dinamis melalui browser dan menyimpannya di folder template masing-masing.

Sekarang untuk mendapatkan tanggapan, kami akan menautkan file ini di urls.py dan views.py. Setelah semua proses linkage selesai, kita bisa membuat website kita aktif dan berjalan.

Sepanjang baris ini, ini adalah bagaimana Django bekerja. Catatan Python utama digunakan untuk berinteraksi satu sama lain untuk menunjukkan halaman kami adalah settings.py, view.py, dan urls.py

Ketika kami mengkarakterisasi alasan kami di sini secara individual, kami dapat memiliki proses kerja yang menghubungkan database, mengambil sumber dan reaksi data klien dan menampilkan halaman dinamis. Jika anda ingin menyelam lebih dalam di Django, lihat dokumentasi dan pahami hubungan di antara mereka.

Baca Juga: Ide Proyek Python Django

Mendaftar di Kursus Rekayasa Perangkat Lunak dari Universitas top dunia. Dapatkan Program PG Eksekutif, Program Sertifikat Tingkat Lanjut, atau Program Magister untuk mempercepat karier Anda.

Kesimpulan

Kami percaya bahwa Anda menyukai ikhtisar kerangka kerja Django kami. Jika Anda memiliki pertanyaan atau saran tentang artikel ini, beri tahu kami melalui bagian komentar di bawah. Kami akan senang mendengar renungan Anda.

Jika Anda tertarik untuk mempelajari Django dan alat dan kerangka kerja rekayasa tumpukan penuh lainnya, lihat Program PG Eksekutif upGrad dan IIIT-B dalam Pengembangan Perangkat Lunak Tumpukan Penuh yang ditujukan untuk para ahli yang bekerja dan menawarkan 500+ persiapan menyeluruh yang panjang. , 9+ usaha dan tugas, status Alumni IIIT-B, usaha batu penjuru aktif yang wajar dan bantuan pekerjaan dengan perusahaan-perusahaan top.

Persiapkan Karir Masa Depan

Daftar Sekarang untuk Magister Rekayasa Perangkat Lunak