1. Dasar Routing, View
- Import HttpResponse.
- Buat fungsi view.
Pada contoh ini kita membuat view dengan nama siswa. - Buat URL.
URL untuk view siswa.
from django.http import HttpResponse
def siswa(request):
return HttpResponse("Hello Me!")
urlpatterns = [
...
...
path('siswa/', siswa, name='siswa')
]
Akses url: localhost:8000/siswa
2. URL, Templates, Tag
- Import view pada apps/app01.
- Buat URL di urls.py.
from apps.apps01.views import siswa
urlpatterns = [
...
...
path('siswa/', siswa, name='siswa')
]
3. Buat view untuk siswa di apps/apps01/views.py.
from django.shortcuts import render, redirect
def siswa(request):
word2 = "This is Django!"
context = {
'word1': "Hello World!",
'word2': word2,
}
return render(request, 'siswa.html', context)
4. Buat direktori templates di apps/apps01/.
5, Buat file siswa.html di dalamnya.
<p>{{ word1 }}</p>
<p>{{ word2 }}</p>
<p>{{ word2 | upper }}</p>
3. Templates, Advance Views
- Buat page lagi.
- Import view pada apps/app01.
- Buat URL di urls.py.
from apps.apps01.views import siswa, list_siswa
urlpatterns = [
...
...
path('siswa-list/', list_siswa, name='list_siswa'),
]
4. Buat view untuk list_siswa di apps/apps01/views.py.
def list_siswa(request):
list_siswa = ['Joko','Dewi','Toni','Indah']
context = {
'list_siswa': list_siswa,
}
return render(request, 'list-siswa.html', context)
5. Buat direktori templates di apps/apps01/.
6. Buat file list-siswa.html di dalamnya.
{% for siswa in list_siswa %}
<li>{{ siswa }}</li>
{% endfor %}
4. Templates Extending (extends)
- Buat file base.html di direktori templates utama.
<h2>Website Siswa</h2>
2. Letakkan extending template (base.html) pada file list-siswa.html.
{% extends 'base.html' %}
{% for siswa in list_siswa %}
<li>{{ siswa }}</li>
{% endfor %}
5. Templates Extending (include)
1. Buat file header.html di direktori templates utama.
<h4>Header</h4>
2. Include kan header.html di base.html.
<h2>Website Siswa</h2>
{% include 'header.html' %}
3. Akses localhost:8000/siswa-list/.
6. Templates Extending (Block)
- Tambahkan block untuk konten pada base.html.
- Jadi base.html akan menjadi template dasar dari semua page.
...
...
{% block content %}
{% endblock content %}
3. Extends base.html di siswa.html.
4. Tambahkan block content di siswa.html.
{% extends 'base.html' %}
{% block content %}
<p>{{ word1 }}</p>
<p>{{ word2 }}</p>
<p>{{ word2 | upper }}</p>
{% endblock content %}
5. Akses localhost:8000/siswa/.
Lanjutkan Membaca Materi Lengkap