Memulai Web Development dengan Laravel - Menggunakan Blade Template

Template engine adalah salah satu fitur yang sangat diharapkan oleh web developer. Bila suatu web framework sudah memiliki built-in template engine, maka web framework tersebut akan semakin nyaman digunakan, misalnya Laravel. Web framework yang satu ini sudah memiliki template engine dengan nama Blade.
Memang di PHP ada beberapa template engine yang sudah memiliki seperti Twig. Sekarang mari kita coba gunakan Blade yang bisa mempermudah kamu dalam membuat aplikasi web dengan Laravel.

Menyiapkan Controller

Sekarang mari kita buat controller untuk demo Blade. Silahkan buat file dengan nama DemoBladeController.php di dalam app\Http\Controllers kemudian buat kode berikut di dalam file tersebut:
<?php

namespace App\Http\Controllers;

use App\Http\Controllers\Controller;
use Illuminate\Support\Facades\Redis;

class DemoBladeController extends Controller {

 public function index() {

  return view("blade_sample.index");
 }

 public function detail() {

  return view("blade_sample.detail");
 }

 public function conditional() {

  $nilai = 90;
  return view("blade_sample.if", ['nilai' => $nilai]);
 }

 public function looping() {

  $siswa = [
   "Jajang",
   "Sukmana",
   "Debby",
   "Ratu",
   "Clara",
   "Juminah",
   "Inem",
   "Supono"
  ];
  return view("blade_sample.loop", ['siswa' => $siswa]);
 }
}

Sekarang silahkan tambahkan route untuk controller ini di dalam routes/web.php:
// contoh blade
Route::group(["prefix"=>"demo-blade"], function () {
 Route::get("/", "DemoBladeController@index");
 Route::get("/detail", "DemoBladeController@detail");
 Route::get("/conditional", "DemoBladeController@conditional");
 Route::get("/looping", "DemoBladeController@looping");
});
Nah, dari sini ayo kita lanjut ke membuat view dan layout menggunakan Blade terlebih dahulu.

Membuat Layout Sederhana

Di dalam folder resources/views silahkan buat folder dengan nama blade_sample. Kemudian buatlah sebuah file di dalamnya dengan layout.blade.php.
Lalu buatlah kode berikut di dalam file tersebut:
<html>
    <head>
        <title>Laravel - @yield('title')</title>
    </head>
    <body>
        <div class="nav">
            Ini adalah nav
            <hr/>
        </div>

        <div class="content">
            @yield('content')
        </div>

        <div class="footer">
            <hr/>
            Ini adalah footer
        </div>

    </body>
</html>
Nantinya kode diatas akan menjadi wadah bagi kode lain yang menggunakan layout tersebut. Jadi hanya dengan sekali tulis untuk bagian yang sering muncul, maka kita akan menghemat waktu dan tenaga untuk tidak menulis ulang footerdan nav di setiap file view yang kita tulis.

Menggunakan Layout

Sekarang kita akan menggunakannya kepada dua view yang akan meng-extendlayout tadi. Silahkan buat terlebih dahulu file dengan nama index.blade.php di dalam folder blade_sample kemudian buat kode berikut di dalam file tersebut:
@extends('blade_sample.layout')

@section('title', 'Index Page')

@section('content')
    <p>Ini adalah isi utama dari halaman index</p>
@endsection
Kemudian silahkan buat lagi file dengan nama detail.blade.php di dalam folderblade_sample kemudian buat kode berikut di dalam file tersebut:
@extends('blade_sample.layout')

@section('title', 'Index Page')

@section('content')
    <p>Ini adalah isi utama dari halaman detail</p>
@endsection
Dan setelah selesai, silahkan lihat perbedaannya melalui URL berikut:
http://localhost/laraweb/public/index.php/demo-blade
http://localhost/laraweb/public/index.php/demo-blade/detail
Intinya, bagian section akan menjadi placeholder yang dapat diisin apapun dari child template. Dengan demikian kita tidak perlu menulis ulang bagian yang sama dari layout di setiap halaman.

Menggunakan If

Sekarang kita akan mencoba view yang menggunakan kondisional di Blade. Silahkan buat terlebih dahulu file dengan nama if.blade.php di folderresources/views/blade_sample. Kemudian buat source code berikut di dalamnya:
@extends('blade_sample.layout')

@section('title', 'Index Page')

@section('content')
 @if ($nilai >= 90)
    <p>Kamu mendapatkan nilai A!</p>
    @elseif ($nilai >= 60 && $nilai < 90)
    <p>Kamu mendapatkan nilai B!</p>
    @elseif ($nilai >= 40 && $nilai < 60)
    <p>Kamu mendapatkan nilai C!</p>
    @elseif ($nilai >= 0 && $nilai < 40)
    <p>Kamu mendapatkan nilai D!</p>
    @endif
@endsection
Sekarang coba lihat hasilnya melalui URL ini:
http://localhost/laraweb/public/index.php/demo-blade/conditional
Kamu juga dapat mencoba mengubah isi variabel nilai yang ada di controlleruntuk melihat perubahan lainnya.

Menggunakan Loop

Dan yang terakhir kita akan menggunakan loop yang dimiliki oleh Blade. Silahkan buat file dengan nama loop.blade.php dan taruh file tersebut di dalam folder resources/views/blade_sample. Kemudian buat kode berikut di dalam file tersebut:
@extends('blade_sample.layout')

@section('title', 'Index Page')

@section('content')
 <ul>
 @foreach ($siswa as $item)
 <li>{{ $item }}</li>
    @endforeach
    </ul>

    <br/>

    <ul>
 @for ($i = 0; $i < 10; $i++)
 <li>{{ $i }}</li>
    @endfor
    </ul>
@endsection
Untuk melihat hasilnya, kamu hanya perlu mengakses URL ini:

Tutorial Membangun Website Menggunakan Laravel 5.4

Laravel merupakan framework PHP yang dirilis dibawah lisensi MIT, dibangun dengan konsep MVC (Model View Controller). Laravel dirancang untuk meningkatkan kualitas perangkat lunak dengan mengurangi biaya pengembangan awal dan biaya pemeliharaan dengan menyediakan sintaks yang ekspresif, jelas dan menghemat waktu. Beberapa fitur yang terdapat di laravel antara lain :
  • Bundles, yaitu fitur dengan sistem pengemasan modular dan tersedia beragam di aplikasi.
  • Eloquent ORM, yang bertugas menangani objek database dengan pola active record
  • Application Logic, bagian dari controller dan route
  • Reverse Routing, mendefinisikan hubungan antara link dan route
  • Restfull Controllers, memisahkan logika dalam melayani HTTP GET dan POST
  • Class Auto Loading, memanggil otomatis untuk class PHP
  • View Composer
  • IoC Container,
  • Migration
  • Unit Testing
  • Automatic Pagination
  • Blade
  • dan masih banyak lainnya

Persiapan

Sebelum membahas tentang membangun website menggunakan  framework laravel, terlebih dahulu persiapkan kebutuhannya, antara lain :
  • Install Webserver (XAMPP, WAMP, LAMP, etc)
Laravel mendukung web server Apache dan Nginx. Dalam tutorial ini saya menggunakan apache. Oh iya, untuk Laravel ini pastikan anda menggunakan PHP versi 5.6.4 atau yang lebih baru dan mengaktifkan OpenSSL, PDO, Mbstring, dan Tokenizer. Database yang didukung mulai dari SQLLite, MySQL, SQL Server hingga PostgreSQL.
Untuk meringkas tulisan, saya asumsikan anda sudah mengerti mengenai hal ini, yaitu bagaimana cara instalasi dan penggunaanya. Bila belum paham silahkan mampir ke google untuk bertanya-tanya.
  • Install Composer
Saya pernah membahas bagaimana cara menginstall dan menggunakan composer sebelumnya, silahkan baca disini.
  • Install Laravel
Kita akan menginstall laravel menggunakan composer. Silahkan ketik perintah berikut di terminal anda
tunggu hingga laravel berhasil di install, akan muncul tampilan seperti ini
jika anda lihat didalam folder mylaravel, maka struktur folder yang dihasilkan kurang lebih seperti ini
struktur folder laravel
struktur folder laravel
Kita dapat mengetahui versi Laravel yang kita gunakan dengan perintah

Konfigurasi

Setelah menyelesaikan tahap instalasi laravel, pastikan folder storagedan bootstrap/cache dapat diakses web server. Jika menggunakan unix silahkan ketik perintah berikut
Untuk konfigurasi database akan dibahas di artikel selanjutnya.

Testing

Saatnya memastikan apakah website laravel yang kita buat tadi berhasil. Laravel memiliki builtin web server, untuk lebih jelasnya silahkan ketik perintah berikut
Silahkan kunjungi http://localhost:8000 (versi builtin server) atau http://localhost/mylaravel (versi web server default yang diinstall sebelumnya). Jika mengikuti tutorial membangun aplikasi web menggunakan framework laravel ini dengan benar, maka hasilnya akan tampil sebagai berikut
tampilan default hasil instalasi laravel
tampilan default hasil instalasi laravel

Oke, artikel ini saya cukupkan sampai disini. Untuk lebih lanjut mengenai template, database dan sebagainya akan dipost bertahap pada artikel berikutnya. Bila ada pertanyaan atau saran dan kritik silahkan feel free to leave comment below.

Apasih itu hal Ionic Framework

Tidak di pungkiri lagi Indonesia adalah pengguna aktif smartphone, seiring dengan kemajuan teknologi tersebut banyak perusahaan lokal ma...