Digitalmapia adalah situs dimana semua orang bisa menulis artikelnya sendiri. Klik "Login/Register untuk masuk, lalu klik "Tulis Artikel" untuk mulai menulis.

Membuat CRUD Sederhana pada Laravel : Part 2

Sebelumnya kita telah membahas cara memasukan data ke dalam database dengan menggunakan Laravel (Create). Kali ini kita akan membahas tentang cara menampilkan data dari database. Ada tiga tahapan yang akan dilakukan yaitu:

  • Membuat route.
  • Mengirim data ke view.
  • Membuat looping.

Pertama-tama marilah kita membuat sebuah route baru sebagai berikut:

Route::get('booklist', function(){

});

Setelah itu, kita akan mengambil semua data dari tabel books yang telah kita buat sebelumnya. Ingat, untuk mengakses tabel books kita akan menggunakan Model bernama Book. Untuk melakukannya tambahkan Book::all() pada route yang telah kita buat:

Route::get('booklist', function(){

   $books = Book::all();

});

Setelah itu, kita akan memanggil sebuah view sekaligus mengirim variable $books ke view tersebut.

Route::get('booklist', function(){

   $books = Book::all();
   return View::make('listbook')->with('booksdata', $books);

});

Jika, anda mengakses route tersebut, bisa dipastikan sebuah pesan error akan muncul. Itu karena view bernama listbook masih belum kita buat. Oleh karena itu, mari kita buat view tersebut. Buat sebuah file baru bernama listbook.blade.php  Sebagai berikut:

@extends('layout')

@section('content')
 <!-- data akan ditampilkan disini -->
@stop

Pada route, kita telah mengirimkan sebuah variable bernama booksdata yang bisa diakses melalui view. Variable tersebut bersisi semua data dari tabel books yang bisa kita tampilkan dengan bantuan looping :

@extends('layout')

@section('content')
<section class="container">
 <table class="table">
    <tr>
       <th>Title</th>
       <th>Author</th>
       <th>Description</th>
       <th>Price</th>
    </tr>
    @foreach($booksdata as $book)
      <tr>
         <td>{{ $book->title }}</td>
         <td>{{ $book->author }}</td>
         <td>{{ $book->description }}</td>
         <td>{{ $book->price }}</td>
      </tr>
    @endforeach
 </table>
</section>
@stop

Jika anda perhatikan pada code diatas, kita menggunakan {{ $book->title }} untuk judul buku, {{ $book->author }} untuk pengarang dsb. Syntax yang digunakan yaitu blade, dimana {{ $book->title }} bisa disamakan dengan <?php echo $book->title; ?> .

Sekarang, anda bisa buka route ‘booklist’ melalui browser, maka semua data yang berada pada table ‘books’ akan ditampilkan dalam bentuk table. Cara akses route tersebut misal:

http://lrv.dev/booklist

Atau jika anda menggunakan domain ‘localhost’ :

http://localhost/booklist

Kita telah membahas mengenai Create dan Read. Pada bagian selanjutnya, kita akan membahas mengenai Update.

Bersambung :)

Laravel Wallpapper
  • faisalgifars

    mantap gan … di tunggu part 3nya :)

    • http://digitalmapia.com/ digitalmapia

      part 3 nya udah ada gan, silahkan dichek 😀

      • faisalgifars

        oh .. iya gan .. udah ane baca .. thanks tutorialnya :)

  • yadi

    agan agan mau nnya, ko hasil nya ga muncul apa apa ?? blank page -_- padahal yang saya rubah cuman konsep(MVC) jadi alur nya Routes->Controller->View .
    mohon pencerahan nya gan..

    • http://digitalmapia.com/ digitalmapia

      Tambahin ‘return’ di controller-nya gan.. 😀 . jadinya ‘return View::make(‘nama_view_agan’);’ :)

      • yadi

        hahaha maaf gan newbie ane 😀

        • http://digitalmapia.com/ digitalmapia

          It’s okay, yang udah sering pake aja kadang-kadang lupa 😀

          • yadi

            TQ gan ..
            ini ada satu masalah lagi gan, saya mau nambahin delete confirm gmna cara nya gan ?? ane pake link_to_action buat link delete nya …

            gini script nya..
            {{ link_to_action(‘ListController@delete’, ‘Delete’,array($list->id_kosan))}}
            nah delete confirm nya gmna gan ?

          • http://digitalmapia.com/ digitalmapia

            Bisa pake popup javascript kalo mau, Bisa juga diarahin dulu ke halaman confirmation misal:

            {{ link_to_action(‘ListController@confirm’, ‘Delete’,array($list->id_kosan))}}

            pada controller ‘ListController@confirm’ arahkan ke view bernama ‘confirm’ plus kirim id-nya.

            return View::make(‘confirm’)->with(‘id’, $kosan);

            lalu pada halaman confirm baru deh link-nya dibikin persis seperti yang agan buat sebelumnya:

            {{ link_to_action(‘ListController@delete’, ‘Delete’,array($list->id_kosan))}}

            Tapi terserah sih agan mau pake cara kayak gimana, mau pake cara sendiri juga boleh 😀

          • yadi

            makasih gan (y)
            mantabs(y)

          • miruza annas

            dibikin tutor nya juga donk gan