
Mengapa Fungsi Update Itu Penting?
Fungsi Update dalam CRUD memungkinkan pengguna untuk memperbarui atau mengedit data yang sudah ada di database. Ini sangat berguna dalam aplikasi yang membutuhkan fleksibilitas bagi pengguna untuk memperbarui informasi yang sudah disimpan, seperti aplikasi manajemen konten atau sistem inventaris.
Apa yang Akan Dipelajari?
Pada artikel ini, kita akan mempelajari langkah-langkah berikut:
- Membuat Tampilan (View) untuk Fungsi Update
- Mengatur URL untuk Fungsi Update
- Membuat Template HTML untuk Formulir Edit Data
- Menguji Fungsi Update di Browser
Mari kita mulai!
Langkah 1: Membuat Tampilan (View) untuk Fungsi Update
Pertama-tama, kita perlu membuat tampilan untuk mengambil data yang sudah ada, menampilkannya dalam formulir, dan menyimpan perubahan saat pengguna mengirim formulir.
- Buka File
views.py
di Aplikasi CRUD:
Di dalam aplikasi CRUD, buka fileviews.py
. - Buat Fungsi untuk Mengedit Data:
Tambahkan fungsiupdate_artikel
diviews.py
untuk menangani proses edit data.
from django.shortcuts import render, redirect, get_object_or_404
from .forms import ArtikelForm
from .models import Artikel
def update_artikel(request, id):
artikel = get_object_or_404(Artikel, id=id) # Mengambil artikel berdasarkan ID
if request.method == 'POST':
form = ArtikelForm(request.POST, instance=artikel)
if form.is_valid():
form.save()
return redirect('list_artikel')
else:
form = ArtikelForm(instance=artikel)
return render(request, 'crud/update_artikel.html', {'form': form, 'artikel': artikel})
Penjelasan Kode:
get_object_or_404(Artikel, id=id)
: Mengambil objek artikel berdasarkan ID. Jika tidak ditemukan, akan menghasilkan halaman 404.instance=artikel
: Memberi tahu Django bahwa formulir ini akan diisi dengan data dari objek artikel yang spesifik.form.save()
: Menyimpan perubahan yang dibuat di formulir.
Langkah 2: Mengatur URL untuk Fungsi Update
Agar fungsi update_artikel
bisa diakses melalui URL, kita perlu menambah rute baru di urls.py
.
- Buka File
urls.py
di Aplikasi CRUD:
Buka fileurls.py
di aplikasi CRUD. - Tambahkan URL untuk Fungsi Update:
Tambahkan path baru yang menerima parameter ID untuk mengidentifikasi artikel yang ingin diedit.
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'),
path('artikel/edit/<int:id>/', views.update_artikel, name='update_artikel'), # URL untuk edit artikel
]
Dengan pengaturan ini, URL http://127.0.0.1:8000/crud/artikel/edit/<id>/
akan diarahkan ke fungsi Update.
Langkah 3: Membuat Template HTML untuk Formulir Edit Data
Template ini akan menampilkan formulir dengan data yang sudah ada, memungkinkan pengguna untuk memperbarui informasi yang mereka inginkan.
- Buat Template
update_artikel.html
:
Di dalam foldercrud/templates/crud
, buat file bernamaupdate_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>Edit Artikel</title>
</head>
<body>
<h1>Edit Artikel: {{ artikel.judul }}</h1>
<form method="post">
{% csrf_token %}
{{ form.as_p }}
<button type="submit">Simpan Perubahan</button>
</form>
<a href="{% url 'list_artikel' %}">Kembali ke Daftar Artikel</a>
</body>
</html>
Penjelasan Kode:
{{ artikel.judul }}
: Menampilkan judul artikel yang sedang diedit.{% csrf_token %}
: Token keamanan untuk formulir POST.{{ form.as_p }}
: Menampilkan formulir dalam bentuk paragraf yang rapi.
Langkah 4: Menguji Fungsi Update di Browser
Saatnya menguji apakah kita bisa mengedit data melalui formulir di browser.
- Jalankan Server Django:
Jika server belum berjalan, jalankan perintah berikut:
python manage.py runserver
- Akses Halaman Edit Artikel:
Buka browser dan akses URLhttp://127.0.0.1:8000/crud/artikel/edit/<id>/
(ganti<id>
dengan ID artikel yang ingin Anda edit). Jika berhasil, Anda akan melihat formulir yang telah terisi dengan data dari artikel tersebut. - Coba Edit Artikel:
- Ubah data di formulir, lalu klik tombol Simpan Perubahan.
- Jika berhasil, Anda akan diarahkan kembali ke halaman daftar artikel, dan perubahan akan terlihat di daftar artikel.
Kesimpulan
Pada artikel ini, Anda telah mempelajari:
- Membuat tampilan (view) untuk mengedit data yang sudah ada
- Menambahkan URL untuk mengakses fungsi Update
- Membuat template HTML untuk formulir edit data
- Menguji fungsi Update di browser
Sekarang, aplikasi CRUD Anda memungkinkan pengguna untuk mengedit data yang sudah ada di database. Pada artikel berikutnya, kita akan membahas fungsi Delete, yang memungkinkan pengguna untuk menghapus data dari aplikasi.
Leave a Reply