Skip to main content

Belajar Django Python Full Stack Web Developer

belajar django full stack

Bahasa pemrograman Python juga bisa dimanfaatkan untuk membuat website. Membuat website dengan python lebih mudah menggunakan framework. Flask dan Django adalah framework membuat website yang menggunakan python. Dan kita sekarang akan belajar django python untuk membangun website full back end dan front end.

Full Stack Web Developer adalah sebutan untuk mereka yang mengembangkan web dari bagian back end dan front end. Definisi mudah versi edikartono.com Back end adalah bagian wesite yang tidak terlihat, bagian yang tidak terlihat itu seperti proses input data, permintaan gambar, dan sebagainya. Front end adalah bagian dari web yang terlihat seperti gambar, tulisan, desain warana-warni.

Berdasarkan apa yang pernah saya pelajari dari keduanya back end dan front end, bagian yang lebih mudah dipelajari adalah bagian front end. Komponen yang penting untuk membangun bagian depan sebuah website diantaranya HTML, CSS, JavaScript. Kita juga dapat menggunakan framework Bootstrap dan Foundation untuk membangun front end web lebih mudah. Kedua framework itu lebih banyak digunakan. Tentu selain itu juga masih banyak lagi tapi tidak sepopuler keduanya.

Belajar django tidak cukup ditulis pada satu halaman ini saja, jadi akan ada beberapa halaman yang membahas satu persatu fitur dari django. Pada halaman ini kita mulai dari perkenalan dulu, sebab ada pepatah mengatakan tak kenal makanya tak sayang.

Back to top

1) Mulai Belajar Django

Django adalah sebuah framework full stack yang akan membantu kita dalam mengembangkan website menggunakan bahasa python. Berapa lama akan selesai belajar django itu tergantung dari keseriusan kita sendiri memahami, dan agar lebih cepat dapat ilmunya lebih baik setiap bagian yang sudah dipelajari langsung dipraktekkan.

Django berawal dari beberapa orang yang bekerja disebuah website berita, mereka bertugas membuat dan merawat web portal tersebut. Awal mereka membuat django adalah tahun 2003 yang kemudian ditulis ulang dan dirilis kepublik pada Juli 2005 sebagai proyek OpenSource yang diberi nama Django. Kemudian berkembang hingga saat ini versi 3

Untuk menggunakan django dan mulai belajar django, kita akan mempersiapkan kebutuhannya

Back to top

2) Persiapan Belajar Django

Persiapan kita sebelum belajar django adalah

  1. Python versi 3
  2. Virtualenv (Baca Juga: Cara Membuat Virtual Environment Python)
  3. pip

Dua tool penting dalam menggunakan django, kita akan mulai membuat website django didalam sebuah virtualenv. Virtualenv diperlukan untuk menjaga dari konflik antar projek yang lain, disarankan untuk satu projek website menggunakan satu virtualenv. Jangan satu virtualenv untuk banyak projek django.

PIP yang kita sudah banyak tau adalah tool manajemen paket python, untuk menginstall django dan komponen lain yang diperlukan.

2.1) Install Django

Kita bisa menginstall django dilingkungan OS maupun didalam virtualenv. Untuk menginstall django dilingkungan OS Linux Debian | Ubuntu caranya sudo apt-get install python3-django. Tapi disini kita tidak bisa memilih versi django sesuai kebutuhan. Agar bisa memiliih versi django tertentu gunakan pip caranya pip install Django untuk install django versi terbaru atau kita bisa memilih versi tertentu dengan pip install Django==2.2.* untuk menginstall Django versi 2.2.x

Install Django di Virtualenv, dengan kita menginstall django divirtualenv saling tidak mempengaruhi aplikasi python yang ada diluar virtualenv. Jadi setiap virtualenv yang dibuat, kita bisa menginstall django versi yang berbeda.

Kita akan menginstall django di virtualenv, menggunakan saya menggunakan linux OS

  1. Buka terminal atau command prompt
  2. Buat folder, contoh ini saya membuat folder bernama dev-django kemudian masuk kedalam folder dev-django.
    mkdir dev-django
    cd dev-django
    
    Sekarang kita sudah berada didalam folder dev-django
  3. Membuat virtualenv dengan perintah python3 -m venv env kita akan membuat virtualenv didalam folder dev-django bernama env. Env ini adalah nama folder env, dan folder env tidak kita buat sendiri karena dengan menjalankan perintah tersebut akan terbuat sendiri folder env.
  4. Aktifkan virtualenv dengan perintah source env/bin/activate untuk menonaktifkan cukup dengan deactivate. Setelah aktif virtualenv kita bisa lihat ada tanda (env) di terminal.
  5. Kita masih didalam folder dev-django dan menginstall django dengan perintah pip install Django==2.2.* Pastikan saat menjalankan perintah ini kita terhubung dengan internet untuk mendownload paket django.
  6. Setelah selesai tanpa error, kita bisa memeriksa apakah django sudah terinstall atau belum dengan perintah pip list.
  7. Install juga paket pillow karena kemungkinan besar kita akan menggunakan inputan untuk upload gambar. Tapi jika field upload gambar maka paket pillow tidak diperlukan. pip install pillow

Perhatikan gambar berikut

belajar django virtualenv

Urutan proses periapan kita

belajar django django

Memeriksa paket didalam virtualenv

Back to top

3) Membuat Project Django

Belajar django masih terus berlanjut dan kemudian kita akan membuat project pertama django kita. Posisi kita masih berada difolder dev-django dan sekarang saya akan membuat projek pertama django bernama myproject. Yang harus saya lakukan adalah ketik perintah django-admin startproject myproject

Lihat didalam folder dev-django sekarang ada dua folder bernama env dan myproject. Pada folder env berisi seluruh paket yang sudah diinstall, folder ini jangan diganggu. Dan folder myproject berisi project django kita.

3.1) Struktur Direktori Django

Dalam folder myproject mari kita lihat apa saja isinya


+myproject
|--manage.py
|--myproject
   |--__init__.py
   |--settings.py
   |--urls.py
   |--wsgi.py

File dan folder dasar yang harus kita kenali dalam project django

  1. Direktory myproject/ ini adalah root directory yang berisi seluruh pekerjaan django kita, folder ini bisa direname dan tidak berpengaruh terhadap sistem, tidak menyebabkan error.
  2. File manage.py adalah program atau jalan pintas untuk utilitas django-admin. Kita akan sering menggunakan file ini nanti diantaranya mengaktifkan server, migrasi, dan membuat sesuatu.
  3. File myproject/__init__.py meski hanya file kosong, tapi file ini penting untuk memberitahu kepada python bahwa folder ini sebuah paket python.
  4. File myproject/settings.py pengaturan konfigurasi project django, kita akan beberapa kali melakukan penyesuaian sesuatu di file ini.
  5. File myproject/urls.py yang bertanggung jawab memetakan rute project kita, file ini mendeklarasikan semua URL project django. Inilah file pertama yang diproses saat ada request dari client.
  6. File myproject/wsgi.py saat tahap pengembangan tidak perlu melakukan apapun terhadap file ini. Diperlukan saat mengonlinekan project kita nanti, ini adalah entry point>

Cara kerja Django ketika ada permintaan berupa url, yang pertama kali diproses adalah file urls.py karena file ini bertanggung jawab terhadap rute jalur. Kemudian dari urls.py diarahkan menuju views untuk melakukan proses lanjutan yang bisa saja berupa menulis atau mengambil data dari model, menampilkan file html, dan mengembalikan respon ke client.

3.2) Menjalankan Server Django

Dalam mengembangkan website menggunakan django python, kita tidak membutuhkan aplikasi webserver seperti apache atau nginx. Karena django memiliki server sendiri untuk tahap pengembangan. Untuk bisa menjalankan django di localhost masuk kefolder project, dalam contoh ini adalah myproject cd myproject dan jalankan perintah

python3 manage.py runserver

belajar django runserver

Ada teks berwarna merah itu untuk sementara kita tidak pedulikan dulu, hanya pemberitahuan project kita belum melakukan migrasi, dan tidak bisa masuk ke admin. Dan setelah itu buka halaman http://127.0.0.1:8000 dibrowser Anda dan tekan CTRL+C untuk menghentikan server. Tampilan awal project django kita akan seperti ini.

belajar django
Back to top

4) Belajar Django Selanjutnya

Sampai tahap ini kita sudah belajar django mengenai persiapan, membuat project, dan menjalankan server. Selanjutnya kita akan belajar django lagi dengan pembahasan membuat aplikasi web halaman statis terlebih dahulu agar lebih mengerti tentang konsep pada rute url. Kemudian dilanjutkan dengan sistem auth serta class dan membuat blog.

Back to top