Membuat View Pada Laravel

Ada beberapa cara yang sederhana untuk menggunakan view di Laravel yaitu menempatkannya langsung pada routing atau controller, akan tetapi lebih dominan menggunakannya pada controller dari pada di routing. Saya tidak merekomendasikan untuk menggunakan view di routing.

Daftar isi:

Menggunakan view sederhana

Saya akan memberikan contoh yang relevan untuk memulai menggunakan view, sebagai gambarannya saya akan pratekan sedikit penggunaan templat blade. Perlu diketahui semua berkas yang akan ditampilkan berada pada direktori resources/views maka dari itu gunakan templat blade untuk menyusun skrip HTML Anda. Silakan untuk membuat berkas baru bernama salam.blade.php pada direktori resources/views, kemudian sisipkan skrip dibawah ini ke resources/views/salam.blade.php:

<html>
    <body>
        <h1>Hai {{ $nama }}</h1>
    </body>
</html>

Catatan: Jika Anda menggunakan Laravel maka Anda harus menggunakan templat blade, jika nama berkas salam.blade itu sebenarnya salam. Jadi jangan sampai Anda salah memanggil nama berkas.

Kemudian Anda beralih ke routing dan salin skrip dibawah ini lalu masukan pada berkas routes/web.php:

Route::get('/', function() {
    return view('salam', ['nama' => 'Febri Hidayan']);
});

Dari sini Anda bisa menilai dengan jelas bahwa argumen pertama berupa nama berkas yang akan ditujuh dan arguman kedua berupa data array yang akan ditampilkan. Seandainya Anda membuat nama berkas baru dengan direktori resources/views/users/index.blade.php, maka Anda bisa menggunakannya seperti ini:

return view('users.index', ['nama' => 'Febri Hidayan']);

Catatan: Anda dilarang untuk membuat nama direktori yang mengandung karakter titik (.), contohnya direktori users.profile.

Menggunakan compact di view

Saya sering melihat kebanyakan programmer menggunakan compact sebagai argumen kedua pada view, tetapi tidak ada salahnya Anda menggunakan metode lain. Mungkin saja menggunakan compact akan jauh lebih mudah dan simpel, itu sangat benar ketika saya baru tahu cara tersebut. Seperti ini contohnya:

$nama = 'Febri Hidayan';
$pesan = 'Saya sedang belajar Laravel';

return view('salam', compact('salam', 'pesan'));

Menggunakan with di view

Saya sendiri lebih suka menggunakan metode with jika suatu argumen tidak lebih dari 2, Anda bisa mencoba caranya seperti ini:

$nama = 'Febri Hidayan';

return view('salam')->with('nama', $nama);
// atau
return view('salam')->withNama($nama);

Catatan: Anda bisa menggunakan kedua cara diatas dan sama-sama akan mengembalikan variabel $nama, tetapi saya sendiri menggunakan withNama.

Menggunakan view di controller

Jadi Anda ingin menggunakan view di controller sebenarnya cara diatas sama saja penerapannya dan Anda tidak perlu khawatir tentang itu. Saya akan memberikan contoh penggunaan compact dan view secara bersamaan pada controller. Silakan lihat skrip dibawah ini:

// letakan di controller

public function salam()
{
    $nama = 'Febri Hidayan';
    $pesan = 'Saya sedang belajar Laravel';

    return view('salam', compact('nama'))
        ->withPesan($pesan);
}

// letakan di templat blade
<html>
    <body>
        <h1>Hai {{ $nama }}</h1>
        <p>{{ $pesan }}</p>
    </body>
</html>