我有4个按钮的侧面导航:
计算机
笔记本电脑
移动
平板电脑
我想要的是一种路由我的观点的方式,以便我可以获得仅属于该类别的帖子。
CategoryContoller
public function show(Category $category)
{
$posts = Category::findOrFail($category)->posts()->get();
return view('pages.computer',compact('category'))->with('posts',$posts);
路线
Route::get('{category}',[
'uses' => 'CatController@showComputer',
'as' => 'pages.computer']);
如果我将mywebsite / Computer放入计算机类别的所有帖子,那么就这样了,如果我使用mywebsite / Mobile,那就相同了。
因此查询正在运行。
现在我怎么能:
{{route('')}}
我的观点所以我可以通过sidenav链接显示每个类别。
答案 0 :(得分:1)
您可以在视图中创建@foreach
循环来渲染所有类别,例如:
<ul>
@foreach($categories as $category)
<li><a href="categories/{{ $category->name }}">{{ $category->name }}</a></li>
@endforeach
</ul>
要在视图中的链接中获取所有类别,您必须先在控制器中获取它们,然后将其传递给观点:
首先你必须创建一条路线:
Route::get('/',[
'uses' => 'CatController@index',
'as' => 'pages.index']);
现有的索引方法:
public function index {
$categories = Category::all();
return view('pages.index',compact('categories'));
}
答案 1 :(得分:1)
您可以尝试类似的东西。
<a href="{{ route('pages.computer', ['category' => $category->name]) }}">
{{ $category->name }}
</a>
只需将您在网址中使用的任何列替换为->name
。
答案 2 :(得分:0)
如果您的路线是这样的
Route::get('/categories/{slug}', 'CategoryController@menuCats');
您可以在以下刀片服务器模板中使用此路由的URL。
<span><a href="{{url('categories/'.$category->slug)}}"></a></span>