我想获得文章的类别名称。这是我的CategoriesController:
public function show(Category $category)
{
$articles = $category->articles()->latest()->paginate(5);
return view('categories.index', compact('articles'));
}
当我尝试这样做时:{{$articles->category()}}
我收到此错误:call_user_func_array() expects parameter 1 to be a valid callback, class 'Illuminate\Database\Eloquent\Collection' does not have a method 'category'
答案 0 :(得分:0)
$articles
将是几篇文章的集合。因此,您不能简单地{{ $articles->category }}
。
但这应该有效:
@foreach ($articles as $article)
{{ $article->category }}
@endforeach
答案 1 :(得分:0)
您已经将类别传递给控制器操作,因此只需将该实例传递给您的视图,而不是尝试从每个文章项中获取它,并可能向控制器操作添加更多数据库查询。
public function show(Category $category)
{
return view('categories.index', compact('articles', 'category'));
}