Tuesday, November 22, 2016

Membuat View Sederhana di Django Framework

Mungkin kita semua telah mempelajari dan paham bagaimana membuat project di Django dan cara menjalankan Development Server. Dan seperti yang kita lihat, nampaknya belum bagikut berguna :( . Ya, saya akui memang saya senang dengan warna pastel halaman selamat selamat datang Django, tapi Django sebenarnya bisa malakukan hal yang lebih luar biasa dari sekedar menampilkan pesan “It worked!”. :D


View Pertamaku, Membuat halaman dinamis sederhana yang menampilkan Waktu sekarang

View Pertamaku, Membuat halaman dinamis sederhana yang menampilkan Waktu saat ini
Seperti di judul, kali ini saya akan mencoba berbagi tentang membuat halaman web yang menampilkan waktu saat ini, baik tanggal maupun jam. Dinamis karena page akan menampilkan waktu server saat script dieksekusi. Cukup sederhana, bahkan tidak ada form atau menggunakan database sama sekali.

Ok, let's bake some codes...

Pertama kita membuat view function yang memenaggil HttpResponse dan membuat return value .


Simpan file tersebuat di dalam direktori project yang kita buat.



Sedikit penjelasan Views.py.
  • Pertama kita mengimport HttpResponse yang berada di module django.http.
  • Kemudian mengimport datetime dari python standart library
  • Berikutnya, kita mendefinisikan fungsi yang disebut waktu_sekarang. Ini adalah fungsi dari views. Setiap fungsi tampilan mengambil sebuah objek HttpRequest sebagai parameter pertama, yang biasanya bernama request.
  • Baris pertama di function diatas adalam membuat varibael lokal bernama now dan diisikan object datetime.datetime.now()
  • Selanjutnya adalah membuat halaman HTML yang disimpan dalam variable html dengan menggunakan kemampuan python format string. Lebih flexibel kan?
  • Last but not least adalah membuat return value yang memuat response HTML. Di Django Setiap function view wajib membuat return value sebuah object HttpResponse. 
Mapping URLs
Seperti web framework modern lainnya, Django telah juga menerapkan mapping URL. Sehingga URL yang diketik atau ditampilkan di browser sebenarnya hanya alias yang bersosiasi terhadap fungsi yang akan di panggil. Seperti contoh yang akan kita bahas, ketika mengetikkan
http://127.0.0.1:8000/jamsekarang/ sebenarnya sama sekali tidak ada file atu fungsi bernama jamsekarang. Jamsekarang hanya salah satu rule di URL pattern yang bertugas memanggil fungsi waktu_sekarang
  • Buka File urls.py yang berada di folder project yang kita buat

  • Edit file tersebut sehingga menjadi seperti ini.

Langkah selanjutnya adalah menjalankan server, jika running dialamat dan port default Django silajkan ketik http://127.0.0.1:8000/jamsekarang/ di browser anda.

That's it!