Kembangkan pemahaman yang kuat tentang peran dan fungsi proyek dan aplikasi dalam kerangka kerja Django.
Di Django, Anda dapat menggunakan dua komponen utama untuk membuat aplikasi web; aplikasi dan proyek. Pengembang terkadang menggunakan istilah ini secara bergantian, meskipun mereka memiliki arti dan fungsi yang berbeda dalam kerangka web Django.
Memahami Proyek Django
Di Django, proyek adalah wadah tingkat atas untuk aplikasi web Anda. Sebuah proyek berisi konfigurasi untuk aplikasi web Anda dan satu atau beberapa aplikasi, masing-masing menyediakan serangkaian fungsi atau fitur khusus untuk aplikasi web Anda. Itu juga berisi komponen apa pun yang dibagikan di antara berbagai aplikasinya. Dalam proyek Django, Anda dapat menemukan alat dan utilitas yang membuatnya mudah untuk mengelola aplikasi web Anda, seperti utilitas baris perintah Django dan server pengembangan Django.
Komponen Proyek Django
Proyek Django biasanya berisi aplikasi berbeda dan konfigurasi aplikasi web Anda. Setiap kali Anda membuat proyek baru, Django secara otomatis membuat berkas berisi konfigurasi ini. Komponen yang termasuk dalam proyek Django adalah:
- Pengaturan: Modul setelan berisi konfigurasi yang diperlukan untuk proyek Anda dan masing-masing aplikasi dalam proyek Anda. Modul ini terutama berisi opsi konfigurasi seperti koneksi database, middleware, aplikasi terinstal, host yang diizinkan, dan konfigurasi lain yang diperlukan agar aplikasi web Anda berfungsi.
- URL: Modul URL menentukan pola URL untuk aplikasi Anda. Setiap pola URL dalam proyek Anda dapat dipetakan ke pola URL lain di aplikasi Anda atau langsung ke fungsi tampilan yang menangani permintaan untuk URL tertentu. Baik pola URL dipetakan ke fungsi tampilan atau pola URL lain di aplikasi Anda, tujuan utamanya adalah memetakannya ke tampilan yang menangani permintaan secara efektif.
- WSGI: Modul WSGI (Web Server Gateway Interface) adalah standar Python untuk server web dan aplikasi. Modul WSGI memungkinkan Django berjalan di berbagai server.
- ASGI: Modul ASGI (Asynchronous Server Gateway Interface) menangani permintaan asinkron seperti koneksi WebSockets. ASGI adalah standar untuk server web asinkron untuk berkomunikasi dengan aplikasi web Python.
- Komponen lainnya: Kadang-kadang, Anda akan diminta untuk menambahkan komponen Anda sendiri ke proyek Django Anda, bergantung pada kebutuhan aplikasi Anda. Komponen ini termasuk file statis, template, file media, dan perintah manajemen kustom.
Cara Membuat Proyek Django
Untuk membuat proyek Django, Anda harus menggunakan django-admin utilitas baris perintah. Anda dapat membuat proyek Django Anda dengan mengikuti langkah-langkah berikut:
- Di antarmuka baris perintah Anda, arahkan ke direktori tempat Anda ingin membuat proyek Django Anda.
- Instal Django dengan pengelola paket pip.
pip instal django
- Ketik perintah berikut dan jalankan:
django-admin memulai proyek
Perintah di atas akan membuat direktori seperti ini:
Anda akan melihat redundansi dalam nama direktori proyek Anda, misalnya, nama proyek Anda muncul dua kali. Jika Anda ingin menghilangkan ini, Anda dapat menambahkan periode saat Anda menjalankan startproject perintah seperti ini:
django-admin memulai proyek .
Sekarang, struktur proyek Anda akan terlihat seperti ini:
Dengan langkah-langkah di atas, Anda harus berhasil membuat Proyek Django. Itu kelola.py file yang dibuat dalam proyek Anda penting untuk berinteraksi dengan proyek Django Anda.
Memahami Aplikasi Django
Tujuan aplikasi adalah untuk menyediakan proyek Django Anda dengan fungsionalitas khusus. Aplikasi membantu Anda mengatur basis kode dengan memecah fungsi proyek Anda menjadi komponen yang lebih kecil.
Misalnya, dalam proyek blog, Anda akan memiliki aplikasi yang didedikasikan untuk autentikasi dan otorisasi dan aplikasi lain yang didedikasikan untuk postingan blog. Anda dapat membuat banyak aplikasi berdasarkan kebutuhan spesifik proyek Anda.
Komponen Aplikasi Django
Aplikasi Django terdiri dari modul yang terkait dengan proyek, yaitu, fitur khusus situs web Anda. Seperti proyek, Django secara otomatis membuat berkas bermanfaat saat Anda membuat aplikasi. Berkas yang dibuat oleh Django termasuk yang berikut:
- views.py: File ini akan berisi semua logika yang diperlukan untuk menerima permintaan dan mengirim respons. Itu juga menentukan template HTML mana yang akan dirender berdasarkan tindakan pengguna di situs web Anda.
- model.py: Modul ini menetapkan struktur data aplikasi Anda dan menentukan bagaimana database akan menyimpannya. Ia menggunakan ORM (Object-Relational Mapping) Django untuk mendefinisikan data. Komponen model mendefinisikan berbeda hubungan basis data di Django.
- admin.py: Modul admin mendefinisikan antarmuka administrasi aplikasi Django Anda. Anda harus mendaftarkan model Anda di dalam file admin. Jika Anda memerlukan fungsionalitas admin tambahan di luar yang disediakan oleh Django, Anda dapat menentukan tampilan kustom untuk antarmuka admin Anda dalam modul ini.
- urls.py: File ini menentukan pola URL atau rute unik untuk aplikasi Django tertentu. Kadang-kadang, Django tidak membuat berkas ini secara otomatis. Jika ini terjadi, Anda dapat membuatnya secara manual di direktori aplikasi Anda.
Django menghasilkan beberapa komponen lain, seperti apps.py Dan tes.py. File-file ini menentukan konfigurasi aplikasi Anda dan memungkinkan Anda menulis pengujian unit masing-masing.
Cara Membuat Aplikasi Django
Sebelum membuat aplikasi, Anda harus membuat proyek. Setelah Anda membuat proyek, arahkan ke direktori yang berisi kelola.py file dan jalankan perintah berikut di terminal Anda:
python manage.py memulai proyek
Perintah di atas akan membuat struktur folder seperti ini di tingkat direktori yang sama dengan proyek Anda:
Perbedaan Antara Aplikasi dan Proyek di Django
Ada beberapa perbedaan mencolok antara proyek dan aplikasi di Django. beberapa dari mereka terdaftar di bawah ini.
Penggunaan Ulang Kode
Di Django, aplikasi adalah komponen yang dapat digunakan kembali dari aplikasi web Anda. Artinya, jika Anda memiliki aplikasi yang menangani autentikasi pengguna untuk satu project, Anda dapat menggunakan kembali aplikasi yang sama di project lain dengan sedikit atau tanpa perubahan. Sebuah proyek, di sisi lain, tidak dapat digunakan kembali. Setelah Anda membuat proyek untuk aplikasi web tertentu, Anda tidak dapat menggunakannya untuk aplikasi lain.
Lingkup Operasi
Proyek beroperasi pada tingkat yang lebih tinggi daripada aplikasi karena bertanggung jawab atas keseluruhan konfigurasi dan pengelolaan situs web Anda. Di sisi lain, aplikasi hanya bertanggung jawab atas fitur atau fungsi tertentu dari situs web Anda.
Struktur Folder
Perbedaan paling jelas antara aplikasi dan proyek adalah struktur foldernya. Sebuah proyek biasanya mencakup pengaturan dan file konfigurasi lain yang bertanggung jawab atas kesejahteraan situs web Anda.
Sebuah aplikasi mengikuti Arsitektur MVT Django. Itu hanya berisi file dan konfigurasi yang bertanggung jawab atas kesejahteraan fitur tertentu situs web Anda.
Proyek dan Aplikasi Anda Bekerja Sama untuk Membuat Aplikasi Web yang Baik
Meskipun proyek dan aplikasi Anda memiliki keunikannya masing-masing, keduanya pada akhirnya digunakan untuk memberi Anda pengalaman yang mulus saat membangun aplikasi Anda. Anda harus dapat menggabungkan komponen proyek dan aplikasi untuk membangun dan menyesuaikan aplikasi web Anda. Dengan aplikasi dan proyek Anda di tempat, Anda dapat mulai membangun situs web Anda dengan Django.