More

    Tutorial Django Bahasa Indonesia #5: URL Routing Django

    Pada tutorial kali ini, kita akan membahas tentang URL routing yang ada di django. URL Routing ini berfungsi untuk mengalihkan halaman, dari satu halaman ke halaman lainnya. Dimana semua macam routing ini akan di atur oleh file yang bernama urls.py. Sebenarnya dari segi penamaan boleh saja dengan nama lain. Misal : route.urls

    Namun karena kita harus mengikuti aturan-aturan penamaan file yang sudah ditentukan oleh django, maka kita diharuskan menamai urls.py. Agar project yang kita buat nanti akan lebih mudah dipahami oleh orang lain.

    urls.py merupakan deklarasi URL* untuk project Django; Berisi konfigurasi URL pada project yang kita buat.

    URL Routing Django

    buat file urls.py baru pada app blog yang sudah kita buat sebelumnya pada tutorial berikut Tutorial Django Bahasa Indonesia #4: Membuat App Django.url routing djangoperlu diketahui bahwa, urls.py yang berada di folder project mysite berbeda dengan urls.py berada di folder app blog. Karena apabila kita memisah suatu fungsi menjadi beberapa app, maka kita perlu juga untuk memisahkan URL Routing (urls.py) pada setiap app. Hal ini bertujuan agar kode yang berada di urls.py menjadi lebih rapih.

    Namun, agar urls.py yang berada pada folder app blog bisa berfungsi, kita perlu “mendaftarkannya” terlebih dahulu kedalam urls.py yang berada pada folder project, didalam contoh ini yaitu project mysite.

    Caranya:

    buka urls.py yang berada didalam project mysite. secara default, urls.py yang berada didalam folder project seperti berikut ini:

    from django.contrib import admin
    from django.urls import path
    
    urlpatterns = [
        path('admin/', admin.site.urls),
    ]
    

    Lalu, masukkan/include urls.py yang ada di app blog. Masukkan kode dibawah ini didalam bracket urlpatterns.

    path('', include('blog.urls')),
    

    Lalu simpan perubahan tersebut, jika muncul error pada terminal atau console anda, itu artinya anda belum meng-import include. Pastikan ada mengimport include pada bagian import path.

    from django.urls import path,include
    

    Maka hasil akhir dari urls.py pada project mysite akan menjadi seperti berikut.

    from django.contrib import admin
    from django.urls import path,include
    
    urlpatterns = [
        path('admin/', admin.site.urls),
        path('', include('blog.urls')),
    ]

    pada bagian (‘blog.urls’) itu artinya kita akan memasukkan urls yang berada di app blog. 

    Sekarang, kita beralih ke dalam views.py yang berada di app blog. Sekarang kita akan mencoba menampilkan Hello World dihalaman homepage. Untuk saat ini kita belum menggunakan template html, tapi kita hanya akan menggunakan HttpResponse built in django.

    from django.shortcuts import render
    from django.http import HttpResponse
    
    def index(request):
        return HttpResponse("<center><h1>Hello World!</h1></center>")
    
    
    • Line 1 : merupakan import default yang ada ketika kita membuat app baru di django. import tersebut berfungsi untuk me-render halaman html ke browser. yang mana, saat ini belum kita gunakan.
    • Line 2 : kita akan meng-import HttpResponse, yang berfungsi untuk memberikan response ke dalam browser ketika suatu URL di akses.
    • Line 4: membuat function dengan nama index, untuk nama function bisa diganti/bebas sesuai fungsi tujuannya. karena saat ini kita akan menampilkan hello world pada halaman homepage, maka saya beri nama function index.
    • Line 5 : Pada saat function yang ada di views tersebut di akses, maka ia akan memberikan http response berupa hello world yang dibungkus dengan tag html.

     

    Setelah itu, kita perlu melakukan URL Routing yang ada di urls.py pada app blog. Masukkan kode berikut pada urls.py di app blog.

    from django.urls import path
    from . import views
    
    urlpatterns = [
        path('', views.index)
    ]
    • Line 1 : Pada saat membuat urls.py baru kita perlu mengimport path yang ada di django urls.
    • Line 2 : untuk melakukan mapping url dan views, kita juga perlu mengimport views yang ada di app blog.
    • Line 4 : urlpatterns merupakan tag dasar pada django yang digunakan untuk melakukan URL Routing.
    • Line 5 : Pada bagian ini, ketika user melakukan request ke halaman ‘/’ (homepage) maka dia akan memanggil views dengan nama index. Lalu views index tersebut akan memberikan response/return sesuai yang kita inginkan.

    Sekarang coba jalankan server django, dan kita lihat hasilnya.

    python manage.py runserver

    Maka hasilnya akan seperti ini.url routing django

    Anda juga bisa mengubah url sesuai yang anda inginkan pada bagian path. Misal saya akan mengubah url menjadi http://127.0.0.1/homepage/

    maka pada bagian path ubah menjadi seperti berikut.

    path('homepage/', views.index)
    

    Sekarang coba akses http://127.0.0.1/homepage/url routing django

    jadi, segala macam url routing bisa kita atur didalam urls.py ini.

    Tutorial tentang URL Routing ini sampai disini saja, pada artikel berikutnya kita akan masuk ke dalam templating django.

    Seluruh source code yang ada di tutorial ini ada di github saya.

    Link : Github

    Recent Articles

    [td_block_21]

    Related Articles

    Leave A Reply

    Please enter your comment!
    Please enter your name here

    This site uses Akismet to reduce spam. Learn how your comment data is processed.

    Dapatkan konten terbaik dari kami!