Tips Membuat Fungsi Delete Data Di Django Framework

Subscribe Dengan Account Google Untuk Membaca Artikel Tanpa Iklan
Tips Membuat Fungsi Delete Data Di Django Framework

Untuk membuat fungsi delete di Django, ada beberapa langkah yang perlu dilakukan:

1. Menentukan Model dan View


Langkah pertama adalah menentukan model dan view yang akan digunakan untuk fungsi delete. Model adalah representasi data dalam aplikasi Django, sedangkan view adalah fungsi yang menangani permintaan HTTP dan menghasilkan respons.

2. Menambahkan URL


Selanjutnya, perlu menambahkan URL untuk fungsi delete di file urls.py. URL ini akan menentukan bagaimana pengguna dapat mengakses fungsi delete.

3. Membuat Fungsi Delete


Langkah selanjutnya adalah membuat fungsi delete di file views.py. Fungsi ini harus menggunakan metode delete() dari model untuk menghapus data dari database.

4. Menambahkan Template


Terakhir, perlu menambahkan template untuk menampilkan pesan konfirmasi setelah data berhasil dihapus. Template ini dapat dibuat di file templates/app_name/delete.html.


Berikut adalah contoh kode untuk membuat fungsi delete di Django:


models.py:


class MyModel(models.Model):
name = models.CharField(max_length=255)


views.py:


def delete_my_model(request, pk):
my_model = MyModel.objects.get(pk=pk)
my_model.delete()
return HttpResponseRedirect(reverse('my_app:index'))


urls.py:


urlpatterns = [
path('my_model/delete/<int:pk>/', delete_my_model, name='delete_my_model'),
]


templates/app_name/delete.html:


<h1>Data berhasil dihapus!</h1>

<a href="{% url 'my_app:index' %}">Kembali ke halaman utama</a>



Penjelasan Kode:



  • models.py mendefinisikan model MyModel dengan field name.

  • views.py mendefinisikan fungsi delete_my_model yang menerima parameter request dan pk. Fungsi ini:

    • Mengambil data model MyModel dengan primary key pk.

    • Menghapus data model tersebut dari database.

    • Mengalihkan pengguna ke halaman utama aplikasi.



  • urls.py menambahkan URL my_model/delete/<int:pk>/ untuk mengakses fungsi delete_my_model.

  • templates/app_name/delete.html adalah template yang menampilkan pesan konfirmasi setelah data berhasil dihapus.


Catatan:



  • Pastikan untuk menggunakan nama model dan nama aplikasi yang sesuai dengan kode Anda.

  • Anda dapat menambahkan pesan konfirmasi yang lebih spesifik di template delete.html.

  • Anda dapat menambahkan validasi tambahan di fungsi delete_my_model untuk memastikan bahwa pengguna hanya dapat menghapus data yang mereka miliki.


Sumber Referensi:


Baca artikel lainya :