query('category'); $news = News::published() ->when($category, fn ($q) => $q->where('category', $category)) ->paginate(9) ->withQueryString(); return view('news.index', compact('news', 'category')); } public function show(News $news): View { if ($news->status !== 'published' || $news->published_at === null) { abort(404); } return view('news.show', compact('news')); } }