Join our newsletter!

Enter your email to receive our latest newsletter.

Don't worry, we don't spam

route# laravel# laravel tutorial# laravel condition# laravel developer

3 tahun yang lalu

Route if Condition pada blade

Jika anda dihadapkan pada sebuah project dimana terdapat banyak blade untuk menghandle view pada laravel, mungkin anda bisa menggunakan if statement jika struktur view nya tidak terlalu beda
Biasanya metode ini digunakan pada blade show data, contoh kasus jika show.blade.php digunakan untuk menampilkan data produk, dan juga anda ingin menggunakan blade tersebut sebagai view untuk show data kategori misalnya. Alih - alih membuat beberapa blade untuk CRUD, anda bisa menggunakan 1 blade kemudian menambahkan if statemen berdasarkan route nya
Pada contoh dibawah jika route yang di akses adalah product.show maka akan muncul input form Nama & Harga, sedangkan jika yang diakses adalah route category.show maka yang dimunculkan adalah input form Nama Kategori.
@extends('layouts.main')
@section('title', 'Show Data')
    @section('content')

        <!-- hanya akan muncul pada route product.show -->
        @if(Route::is('product.show') )
            <div class="form-group mb-10">
            <label class="form-label" for="form-required">Name</label>
            <input type="text" class="form-control" name="name" value="{{$product->name}}" disabled/>
            </div>
            <div class="form-group mb-10">
            <label class="form-label" for="form-required">Harga</label>
            <input type="text" class="form-control" name="price" value="{{$product->price}}" disabled/>
            </div>
        @endif

        <!-- hanya akan muncul pada route category.show -->
        @if(Route::is('category.show') )
            <div class="form-group mb-10">
            <label class="form-label" for="form-required">Name</label>
            <input type="text" class="form-control" name="name" value="{{$category->name}}" disabled/>
            </div>
        @endif

    @endsection

Wassalam, Selamat mencoba