Join Table dengan ORM di Django

Seperti yang kita ketahui Django menganut sistem ORM dalam penggunaan query dan get data (pokoknya berhubungan dengan data). Disini saya akan sedikit menjelaskan cara / format ORM yang digunakan di Django. Syntax ORM bisa diletakan di admin.py atau di model.py sesuai dengan kebutuhan kalian.
Dibawah ini contoh ORM hanya query 1 table :
parameterbebas = namamodel.object.filter(namaField = Value)
daftarbank = Bank.objects.filter(id=2)

Dalam bahasa SQL nya :

select idbank, bankname FROM bank WHERE id = 2

Lalu bagaimana jika menggunakan 2  tabel yang berelasi ?

parameterbebas = namamodel.objects.filter(namaField=Value).select_related(‘foreignKey‘)

Mari kita terapkan sesuai dengan format diatas :

cabangBank = cabangBank.objects.filter(bank_id=2).select_related(‘bank’).prefetch_related(‘idbank__bank’)

Dalam bahasa SQL nya :

select id, cabangname, bank_id WHERE bank_id = 2

Bagiamana ? penjelasan diatas apakah sudah cukup jelas ?
Oh belum jelas bagaimana cara mengeluarkannya ?
Coba tambahkan looping for seperti dibawah ini :

for cb in cabangBank:
    print cb.cabangBank.cabangname

Semoga bermanfaat

Leave a Reply

Your email address will not be published. Required fields are marked *