![]() | |
Lenovo LOQ Gaming 15IRX9 Intel Core i5Lenovo LOQ 15IRX9 83DV00A8ID - CI5-13450HX/12GB/512GB/RTX3050 6GB/15.6 FHD IPS/WIN11+OHS2021/LUNA GREY - FREE GIFT - MOUSE - BACKPACK - PERFORMANCE - Processor : Intel® Core™ i5-13450HX, 10C (6P + 4E) / 16T, P-core 2.4 / 4.6GHz, E-core 1.8 / 3.4GHz, 20MB Free Klik Disini ! |
Hai para developer Django!
Pernah kesulitan memfilter data di aplikasi web kamu?
Tenang, di tutorial kali ini kita akan membahas tuntas cara mudah memfilter data di Django menggunakan Queryset dengan logika AND & OR.
Ini penting banget lho, apalagi kalau kamu berurusan dengan data yang kompleks.
Singkatnya, Queryset adalah representasi dari sekumpulan data dari database kamu.
Django menggunakan Queryset untuk berinteraksi dengan database secara efisien.
Nah, dengan Queryset ini, kita bisa melakukan berbagai operasi, termasuk memfilter data.
1) Filter dengan Logika AND (&):
Logika AND digunakan untuk mencari data yang memenuhi kedua kondisi.
Contohnya, kita ingin mencari semua buku yang ditulis oleh pengarang "Budi" dan diterbitkan setelah tahun 2020. Dalam kode Django, kita bisa melakukannya seperti ini:
Buku.objects.filter(pengarang="Budi", tahun_terbit__gt=2020)
2) Filter dengan Logika OR (|):
Sebaliknya, logika OR digunakan untuk mencari data yang memenuhi salah satu kondisi.
Misalnya, kita ingin mencari semua buku yang ditulis oleh pengarang "Budi" atau memiliki genre "Fiksi".
Kodenya seperti ini:
from django.db.models import QBuku.objects.filter(Q(pengarang="Budi") | Q(genre="Fiksi"))
3) Menggabungkan AND & OR:
Kabar baiknya, kita juga bisa menggabungkan logika AND dan OR untuk filter yang lebih kompleks.
Misalnya, mencari buku yang ditulis oleh "Budi" dan diterbitkan setelah 2020, atau buku yang bergenre "Misteri".
Buku.objects.filter(
(Q(pengarang="Budi") & Q(tahun_terbit__gt=2020)) | Q(genre="Misteri")
)