У меня ошибка
не существует в этом экземпляре коллекции.
В моем шоу .blade.php я хочу показать десять избранных сообщений.
Итак, в моем контроллере я использовал get()
метод. И на моей странице просмотра я использовал @foreach
. Но это не работает.
Вместо get()
я использовал first()
. Тогда это сработало. Я мог показать только последний пост.
Но это не то, чего я хочу достичь. Потому что
Я хочу показать десять последних сообщений.
ResultsController.php
public function show($id,Post $post)
{
$particular_post= Post::find($id);
$featured_posts = Post::latest()->limit(10)->get();
$posts['particular_post'] = $particular_post;
$posts['featured_posts'] = $featured_posts;
return view('posts.show',compact('posts'));
}
show.blade.php
@foreach($posts['featured_posts'] as $featured_post)
<div class="swiper-container">
<div class="swiper-wrapper">
<div class="swiper-slide">
<div class="image">
<img src="{{ asset('storage/'.$posts['featured_posts']->image) }}" alt="" width="300px" height="200px">
</div>
<div class="card-information">
<div class="event-name">
{{ $posts['featured_posts']->title }}
</div>
<div class="heart">
<i class="fas fa-heart fa-lg" style="color: #F70661"></i>
</div>
<div class="event-date">
{{ $posts['featured_posts']->date }}
</div>
<div class="card-info">
<p>{{ str_limit($posts['featured_posts']->description, 10) }}
<a href="#" style="color: white">...see more</a>
</p>
</div>
</div>
</div>
@endforeach
web.php
Route::get('results/{id}', 'ResultsController@show')->name('posts.show');