Wednesday, 22 November 2017

Laravel Tips dan Trik Penting

Hai rekan rekan programmer...

Kali ini saya sengaja menulis tips dan trik laravel, sebenarnya ini hanya sebagai pengingat dan penting juga buat programmer pemula seperti saya, krn kl para mastah laravel sepertinya sudah hafal diluar kepala tips dan trik seperti ini krn sudah jadi makanan sehari hari.

Oke kita mulai saja beberapa catatan penting :

1. Eloquent Queries

Laravel menawarkan salah satu implementasi Active-Record paling kuat di dunia PHP. Katakanlah Anda memiliki tabel orders, bersama dengan model Order Eloquent:
class Order extends Eloquent {}
Kita dapat dengan mudah melakukan sejumlah query database, menggunakan PHP yang sederhana dan anggun. Baiklah sekarang ayo kita coba ambil semua record dari table orders.
$orders = Order::all();
Selesai, atau mungkin record tersebut akan diurutkan berdasarkan release_date... caranya mudah
$orders = Order:orderBy('release_date','desc')->get();
bagaimana jika ingin mendapatkan data dan mengupdate hanya record tertentu?
 caranya cukup mudah misal :
$order = Order:find(1); //asumsikan bahwa id yang dicari adalah satu
atau 
$order = Order:where('status','active')->first(); //dengan filtering status = aktif
kedua query diatas akan menghasilkan data dari spesifik record dan tinggal kita update datanya lalu simpan.
$order->title = "testing";
$order->status = "active";
$order->save();
wah seru banget kan pake eloquent untuk lebih jelasnya silahkan baca melalui dokumentasi resminya dan explore lebih jauh lagi makin faham makin seru loh codingnya hehehe... berikut linknya

https://laravel.com/docs/5.5/eloquent


2. Flexible Routing

Laravel unik karena dapat digunakan dalam beberapa cara. apakah anda suka atau pernah mencoba dengan system routing yang lebih sederhana seperti Sinatra? jika iya maka laravel bisa menawarkan system routing yang tidak kalah mudah dan keren menggunakan closures.
Route::get('orders', function()
{
    return View::make('orders.index')
        ->with('orders', Order::all());
});
 ini akan sangat membantu ketika kita membuat project kecil dan API, tapi bagaimana jika kita membutuhkan interaksi dengan controller? Tentu saja bisa, routing laravel memungkinkan itu jg
Route::get('orders', 'OrdersController@index');
 
 gimana? keren banget kan... mau lebih lengkap apa saja yang bisa dilakukan laravel dengan system routingnya? cek dokumentasi berikut Basic Routing Laravel


3. Kemudahan Relational

Apa yang akan kita lakukan ketika kita akan mendifinisikan relasi? misalnya task yang dimiliki oleh user. bagaimana cara kita merepresentasikan dalam laravel? saya mengasumsikan bahwa table telah terbentuk kita hanya akan mencoba merelasikan melalui eloquent model.
class Task extends Eloquent {
    public function user()
    {
        return $this->belongsTo('User');
    }
}
 
class User extends Eloquent {
    public function tasks()
    {
        return $this->hasMany('Task');
    }
}
 dengan demikian kita telah merelasikan antara model task dan user. skarang mari kita coba mengambil semua record dari table task yang dimiliki oleh seorang user dengan id =1. cara yang mudah kita dapat melakukannya dengan query berikut
$user = User::find(1);
$tasks = $user->tasks;
namun karena kita telah mendifinisikan antara kedua model tersebut, jika kita ingin mengambil data user yang terkait dengan task kita dapat melakukan dengan query berikut :
$task = Task::find(1);
$user = $task->user;
Sementara sampai disini dl guys pembahasan kita, pada artikel selanjutnya akan kita bahas terkait form model binding, cache database queries, view composers, resource dll sampai bertemu diartikel selanjutnya

Sukses slalu dan happy coding...

No comments:

Post a Comment