Controllers dan interaksi dengan Databese Laravel
Assalamualaikum Wr. Wb
Halo semua, kali ini saya akan sharing tentang controller dan interaksi dengan database di laravel
apa itu controller ??
Pada Konsep
MVC, Controller adalah
yang bertugas
untuk
menghubungkan
Model dengan
View
Biasanya,
satu
buah
Controller untuk
sebuah
modul.
Misalnya
kita
memiliki
SiswaController,
didalamnya
terdapat
fungsi-fungsi
yang berhubungan
dengan
entitas/modul
dan dibawah ini adalah contoh studi kasusnya, selamat belajar
pertama-tama buat dulu file controller nya di cmd
Contoh:
Kedua, buka file Controllernya di folder controller di folder laravel kalian
contoh:
Lalu, buka file routes/web.php lalu tambahkan route seperti dibawah ini
namaRoute, namaController dan fungsi namanya disesuaikan ya kawan-kawan
kita langsung ke studi kasusnya ya kawan-kawan
1.Studi Kasus 2
Di Studi Kasus ini, pertama disini saya mengisi field dari t_kelas yang sudah saya buat dengan 13 data kelas yang ada di SMKN 4 Bandung, tapi data ini adalah data dummy, bukan data yang sebenarnya. Dan semua data ini akan saya tampilkan di halaman web.
Lalu, untuk menampilkan data-data diatas di halaman web kita buat route nya
Kemudian, buka file Controller nya dan buat fungsi di file controller tsb dan tambahkan kodingannya.
di dalam view(),kata 'belajar' merupakan viewnya, sehingga kalau kita belum punya viewsnya kita buat dulu views nya, lalu $data adalah variable array.
Setelah itu buka file views nya, dan buat html seperti dibawah ini.
disini, kita gunakan foreach untuk melakukan looping data yang terdapat pada array atau
object dan endforeach untuk menutup blok foreach.gunakan {{}} untuk melakukan kodingan php, jadi disini kita tidak perlu mengetikkan <?php?> seperti biasanya.
$kelas adalah yang ada di dalem [] di file controller
$kelas as $row adalah berfungsi untuk mengubah variable array kelas menjadi item row
$row->nama kelas, dst adalah untuk memanggil data yang ada di database kita.
Lalu, kita bisa lihat hasilnya dengan mengetikkan http://localhost:8080/laravel5.7-fresh/public/belajar atau bentuk umumnya http://localhost/NamaFolderLaravel/public/namaViews
dan ini adalah hasilnya
2.Studi Kasus 3
Di studi kasus yang ini, file-file yang digunakan masih sama seperti yang diatas atau di studi kasus 2 tadi, hanya kodingan di file controller pada fungsi indexKelas() yang diubah sedikit
1.Menampilkan data t_kelas, diurutkan berdasarkan lokasi ruangan
disini kita hanya perlu menambahkan query orderBy sebelum get(). didalam orderBy() diisi lokasi_ruangan karena kita akan mengurutkan data berdasarkan lokasi ruangan.
lokasi_ruangan adalah nama field dari t_kelas.
kodinggnya adalah seperti ini :
Dan hasilnya adalah seperti ini
2.Tampilkan data dari t_kelas yang memiliki nama wali kelas diawali huruf A saja
Nah kali ini, kita hanya akan menampilkan data dari t_kelas yang nama wali kelasnya diawali huruf A saja. Kodingan sebelumnya yang ada orderBy nya tidak perlu diubah, disini kita tinggal menambahkan query where dan like seperti dibawah ini.
nama_wali_kelas adalah nama dari field yang ada di t_kelas.
untuk menampilkan data yang huruf depannya a ketik % nya dibelakang a, kalo tulis persennya seperti %a% maka jadinya akan menampilkan semua data dari t_kelas yang nama wali kelasnya mengandung huruf a , kalu %a jadinya akan menampilkan nama wali kelas yang huruf belakangnnya a
Dan Hasilnya adalah Seperti ini
3.Tampilkan data dari t_kelas diurutkan berdasarkan jurusan dan nama_kelas
Caranya adalah sama seperti yang ke 1, yaitu menggunakan orderBy, karena diurutkannya berdasarkan 2 field maka kita gunakan and di dalam orderBy nya.
Kodingannya adalah seperti dibawah ini :
Dan Hasilnya adalah seperti ini
4.Tampilkan data dari t_kelas hanya data jurusan Audio Video saja
Nah, kalo yang ini caranya adalah menggunakan where dan like lagi seperti gambar di bawah ini
kalo yang ini persen(%) nya ada 2, karena akan menampilkan jurusan yang memiliki atau mengandung kata audio video.
orderBy digunakan hanya untuk terurut saja
Dan hasilnya seperti ini
Mungkin sekian saja untuk kali ini
Terima kasih dan sampai jumpa lagi.
Komentar
Posting Komentar