
Mengapa Fungsi Create Itu Penting?
Pada aplikasi berbasis CRUD, fungsi Create memberikan kemampuan bagi pengguna untuk menambahkan data baru ke dalam database. Ini sangat berguna untuk aplikasi yang memerlukan input data dari pengguna, seperti blog atau forum. Dengan Django, kita dapat membuat formulir untuk menangani input data dengan cepat dan mudah.
Apa yang Akan Dipelajari?
Pada artikel ini, kita akan membahas langkah-langkah berikut:
- Membuat Formulir dengan Django Forms
- Menambah Tampilan (View) untuk Fungsi Create
- Mengatur URL untuk Fungsi Create
- Membuat Template HTML untuk Formulir Tambah Data
- Menguji Penambahan Data di Browser
Mari kita mulai!
Langkah 1: Membuat Formulir dengan Django Forms
Django menyediakan cara mudah untuk membuat dan mengelola formulir melalui modul forms. Di langkah ini, kita akan membuat formulir yang sesuai dengan model Artikel
.
- Buat File
forms.py
di Aplikasi CRUD:
Jika aplikasi CRUD belum memiliki fileforms.py
, buat file tersebut di dalam direktori aplikasi CRUD. - Definisikan Formulir untuk Model Artikel:
Di dalamforms.py
, kita akan membuatArtikelForm
, yang merupakan formulir untuk modelArtikel
.
from django import forms
from .models import Artikel
class ArtikelForm(forms.ModelForm):
class Meta:
model = Artikel
fields = ['judul', 'isi']
Penjelasan:
forms.ModelForm
: Kelas bawaan Django yang membuat formulir sesuai dengan model.Meta
: Subkelas ini menentukan model dan field yang akan disertakan dalam formulir.
Langkah 2: Menambah Tampilan (View) untuk Fungsi Create
Sekarang, kita akan membuat tampilan create_artikel
untuk menampilkan formulir dan menyimpan data yang dikirim pengguna.
- Buka File
views.py
di Aplikasi CRUD:
Di dalam aplikasi CRUD, buka fileviews.py
. - Buat Fungsi untuk Menampilkan Formulir dan Menyimpan Data:
Tambahkan kode berikut diviews.py
untuk membuat tampilan fungsi Create:
from django.shortcuts import render, redirect
from .forms import ArtikelForm
def create_artikel(request):
if request.method == 'POST':
form = ArtikelForm(request.POST)
if form.is_valid():
form.save()
return redirect('list_artikel')
else:
form = ArtikelForm()
return render(request, 'crud/create_artikel.html', {'form': form})
Penjelasan Kode:
request.method == 'POST'
: Mengecek apakah formulir dikirim dengan metode POST.form.is_valid()
: Memvalidasi data yang dimasukkan pengguna.form.save()
: Menyimpan data baru ke database jika valid.redirect('list_artikel')
: Mengarahkan kembali ke halaman daftar artikel setelah data disimpan.
Langkah 3: Mengatur URL untuk Fungsi Create
Selanjutnya, kita perlu menambahkan rute URL untuk mengakses fungsi Create.
- Buka File
urls.py
di Aplikasi CRUD:
Buka fileurls.py
di aplikasi CRUD. - Tambahkan URL untuk Fungsi Create:
Tambahkan path baru untuk fungsi Create:
from django.urls import path
from . import views
urlpatterns = [
path('artikel/', views.list_artikel, name='list_artikel'),
path('artikel/tambah/', views.create_artikel, name='create_artikel'),
]
URL ini memungkinkan kita mengakses fungsi Create di http://127.0.0.1:8000/crud/artikel/tambah/
.
Langkah 4: Membuat Template HTML untuk Formulir Tambah Data
Sekarang, kita akan membuat template HTML yang menampilkan formulir sehingga pengguna bisa menambahkan data baru.
- Buat Template
create_artikel.html
:
Di dalam foldercrud/templates/crud
, buat file bernamacreate_artikel.html
dan tambahkan kode berikut:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Tambah Artikel Baru</title>
</head>
<body>
<h1>Tambah Artikel Baru</h1>
<form method="post">
{% csrf_token %}
{{ form.as_p }}
<button type="submit">Simpan</button>
</form>
<a href="{% url 'list_artikel' %}">Kembali ke Daftar Artikel</a>
</body>
</html>
Penjelasan Kode:
{% csrf_token %}
: Token keamanan yang wajib ditambahkan di semua formulir POST.{{ form.as_p }}
: Menampilkan formulir dalam bentuk paragraf yang rapi.
Langkah 5: Menguji Penambahan Data di Browser
Saatnya menguji apakah kita bisa menambah data baru melalui formulir di browser.
- Jalankan Server Django:
Jika server belum berjalan, jalankan perintah berikut:
python manage.py runserver
- Akses Halaman Tambah Artikel:
Buka browser dan akses URLhttp://127.0.0.1:8000/crud/artikel/tambah/
. Jika berhasil, Anda akan melihat formulir untuk menambahkan artikel baru. - Coba Tambahkan Artikel Baru:
- Isi formulir dan klik tombol Simpan.
- Jika berhasil, Anda akan diarahkan kembali ke halaman daftar artikel, di mana artikel baru akan muncul di daftar.
Kesimpulan
Pada artikel ini, Anda telah belajar:
- Membuat formulir Django untuk menambah data baru
- Mengatur tampilan dan URL untuk fungsi Create
- Membuat template HTML untuk menampilkan formulir input
- Menguji penambahan data di browser
Dengan adanya fungsi Create, aplikasi CRUD Anda kini memungkinkan pengguna untuk menambah data baru. Pada artikel selanjutnya, kita akan membahas fungsi Update, yang memungkinkan pengguna untuk mengedit data yang sudah ada.
Leave a Reply