/**/

Read     Belajar Dasar Eloquent Laravel

Belajar Dasar Eloquent Laravel

Eloquent ORM (Object Relation Maping) ini fitur dari Laravel yang sangat saya suka, dengan Eloquent kita bisa dengan mudah Menjalankan Query – query Database misal nya Insert, Update, Delete dan Read Data.

Ohya, ini tutorial lanjutan dari sebelumnya ya yang membahas mengenai migration dan schema, karena kita sudah membuat migration nya jadi langsung saja kita tinggal membuat model nya dulu, yaitu untuk membuat model blog. Untuk membuat model, ketikkan pada Cmd seperti ini :

php artisan make:model Blog

Lalu kita lihat pada folder Laravel kita masuk ke folder App :

folder eloquent laravel

Disitu terdapat model kita Blog dan model bawaan Laravel User, karena model user tidak terpakai mendingan dihapus saja. Lalu kita lihat pada Blog.php, masih kosong seperti ini :

Model Laravel id

Untuk membuat model, silahkan isi sesuai dengan yang ada di table blogs :

<?php

namespace App;

use Illuminate\Database\Eloquent\Model;

class Blog extends Model
{
    protected $table = 'blogs';
    protected $fillable = ['judul', 'deskripsi'];
}

Ket :

  • protected $table = 'blogs'; adalah nama table nya.
  • protected $fillable = ['judul', 'deskripsi', 'created_at', 'updated_at']; isi kolom nya, karena ID sudah otomatis jadi tidak perlu dibuat.
  • Lalu created_at dan updated_at nya juga tidak perlu buat karena sudah otomatis juga, tapi jika sobat tidak menggunakan created dan updated_at nya bisa ditambahkan script ini public $timestamps = false; pada Model tadi.

Tambah Data

Lalu kita ingin menambahkan data dengan Eloquent ke Table Blogs melalui route, script nya gini :

Route::get('/tambah', function()
{
    $blog = new Blog;  
    $blog->judul = "Judul Pertama";
    $blog->deskripsi = "Deskripsi nya disini, contoh menambah data pada route.";
    $blog->save();    
});

Ket :

  • $blog = new Blog; $blog adalah variable nya, new Blog nama model nya.
  • $blog->judul pastikan kolom yang dituju sesuai/sama dengan yang ada di tabel nya.
  • $blog->save(); proses data nya untuk disimpan.

Jangan lupa menambahkan use App\Blog; pada routes.php , letakkan saja dibawah <?php.

Jalankan url route /tambah nya pada browser.  Jika sudah, coba sobat cek pada table blogs di phpmyadmin nya :
Eloquent crud id

Hasilnya blank putih saja karena tidak kita masukkan apa-apa tapi data sudah masuk. created_at dan updated_at nya pun sudah terisi otomatis, pada Eloquent kita tidak perlu lagi Insert Into blabla. Cukup mudah kan? :D

Update Data

Sekarang kita lakukan update data yang sudah kita masukkan tadi, jadi kita tambahkan lagi pada route nya seperti ini :

Route::get('/update', function()
{
    $blog = Blog::find(1);  
    $blog->judul = "Judul Diedit";
    $blog->deskripsi = "Deskripsi juga sudah di Edit";
    $blog->save();
});

Ket :

  • $blog = Blog::find(1); Artinya Menjalankan / Mengubah data blog yang id nya 1.

Panggil url nya, dan cek ke database, data berhasil dirubah :

Update data eloquent

Menampilkan Data

Setelah Coba di simpan dan diedit, sekarang coba kita tampilkan data nya menggunakan Eloquent :

Route::get('/tampil', function()
{
    $blogs = Blog::all();
    echo "<ul>";
    foreach($blogs as $blog)
    {
       echo "<li>"; 
       echo "<b>Judul nya</b> : "; 
       echo $blog->judul;
       echo " <b>Deskripsi nya</b> : "; 
       echo $blog->deskripsi; 
       echo "</li>";
    } 
    echo "</ul>";
});

Pastekan di routes.php ya,

Hasilnya :

tampil data laravel

Ket :

  • $blogs = Blog::all(); fungsi nya menampilkan semua data di table blogs.

Hapus Data

Contoh terakhir kita menghapus data, pastekan pada routes.php :

Route::get('/hapus', function()
{
    $blog = Blog::find(1);
    $blog->delete();    
});

Seperti biasa, panggil url nya dan jika sudah lihat ke database apabila data sudah tidak ada berarti udah berhasil kehapus dong :v

Yap, selesai sudah. Singkat saja tutorial Eloquent dasar kali ini, yah namanya juga dasar jadi kita belajar dasar – dasar nya dulu sebelum lanjut ke CRUD nya, nanti saya pasti buat kok.

Tutorial selanjutnya masih saya pikirkan untuk membuat tentang apa :D yang penting terus di Pantau ya sob, Share yaaa.

Terimakasih.

Top