Error Readmore menggunakan slug Laravel

Pada saat saya membuat route, method show dan viewnya sebagai berikut :

Route

Route::get("/show/{slug}","HomeController@show");

Controller method show($slug)

    public function show($slug)
    {
    	$data = DB::table("artikels")->where("slug",$slug)->first();
    	return view("show")->with(compact("data"));
    }

View show.blade.php

<div class="container">

	@foreach($data as $dt)
	<h1 class="header">
		{{$dt->judul}}
	</h1>

	<b><small>{{$dt->penulis}}</small></b>

	<br>

	<p>
		{{$dt->isi}}
	</p>
	@endforeach

</div>

saya mendapati error : ErrorException

compact(): Undefined variable: show

dan juga Invalid argument supplied for foreach()

atau ketika first saya ganti menjadi get(), hasilnya http://127.0.0.1:8000/show/%7B$dt-%3Eslug%7D tanpa ada yang muncul hasil foreachnya

mohon solusinya

avatar Ihzarizky
@Ihzarizky

39 Kontribusi 9 Poin

Diperbarui 3 tahun yang lalu

1 Jawaban:

Jawaban Terpilih

<div>first itu digunakan untuk mengambil satu data di laravel.<br>Karena itu datanya tidak perlu diloop, karena datanya cuma satu, langsung ambil dari objectnya, tidak diloop lagi</div>

avatar hilmanski
@hilmanski

2686 Kontribusi 2135 Poin

Dipost 3 tahun yang lalu

Login untuk ikut Jawaban