query('q', '')); $terms = GlossaryTerm::ordered() ->when($q, function ($query) use ($q) { $query->where(function ($sub) use ($q) { $sub->where('term', 'like', "%{$q}%") ->orWhere('definition', 'like', "%{$q}%") ->orWhere('aliases', 'like', "%{$q}%"); }); }) ->paginate(20) ->withQueryString(); return view('glossary.index', compact('terms', 'q')); } public function show(GlossaryTerm $glossaryTerm): View { return view('glossary.show', compact('glossaryTerm')); } }