2016-08-30 77 views
0

对于一个博客网站,我把所有的帖子显示在页面上的类别&名单,虽然现在我需要显示的职位为每个类别它自己单独的页面上。显示一个单独的页面上每一个类别 - laravel

比方说,我有一个类别,这是“JavaScript”等,我想只用JavaScript的网页上显示的类别的职位。

这是做什么正确的代码?这里有一个我现在拥有的例子。

categoriesController.php

public function show($id) 
{ 
$post->withCategories($Categories)->$id->($id as **javascript)** 
} 

javascript.blade.php(对应视图)

<tbody> 
@foreach ($categories as $category->$id>**javascript**) 
<tr> 
<th>{{ $category->id }}</th> 
<td>{{ $category->name }}</td> 
</tr> 
@endforeach 
</tbody> 
</table> 
</div> <!-- end of .col 

回答

1

如果您已经设置了在laravel车型的关系正常,你可以使用whereHas

$posts = Post::whereHas('categories', function ($query) { 
    $query->where('name', '=', 'javascript'); 
})->get(); 

不过我亲自翻阅订单并加载Category第一所以你的名字进行查询:

$category = Category::with('posts')->where('name', '=', 'javascript')->get(); 

然后在视图:

{{ $category->name }}<br> 
@foreach(category->posts as $post) 
    {{ $post->title }}<br> 
@endforeach 
+0

非常感谢! – n31l

相关问题