Laravel 6 groupBy 到 belongsTo 关系
Laravel 6 groupBy to belongsTo relationship
你好,我有 Post 模型与关系:
public function category()
{
return $this->belongsTo(category::class);
}
我需要在类别的每个选项卡上显示帖子。为此,我需要使用 groupBy。当我这样做时:
$posts = Post::with('category')->groupBy('category.title')->get();
我收到错误:
Column not found: 1054 Unknown column 'category.title'.
为什么?我怎样才能 return 我的帖子带有类别标题的键?
对于多语言我使用这个包:https://github.com/spatie/laravel-translatable
$posts = Post::with('category')->get()->groupBy('category.title')->all();
您可以将回调传递给 return 您希望作为分组依据的值(正如您提到的,您正在使用 laravel-可翻译包):
$posts = Post::with('category')->get()->groupBy(function ($post, $key) {
return $post->category->getTranslation('title', 'fr');
})->all();
你可以这样使用:
$posts = Post::all()->groupBy('category_id')->get();
然后在 blade 文件中你可以 foreach 选项卡并通过 category_id
找到一个名称
你好,我有 Post 模型与关系:
public function category()
{
return $this->belongsTo(category::class);
}
我需要在类别的每个选项卡上显示帖子。为此,我需要使用 groupBy。当我这样做时:
$posts = Post::with('category')->groupBy('category.title')->get();
我收到错误:
Column not found: 1054 Unknown column 'category.title'.
为什么?我怎样才能 return 我的帖子带有类别标题的键?
对于多语言我使用这个包:https://github.com/spatie/laravel-translatable
$posts = Post::with('category')->get()->groupBy('category.title')->all();
您可以将回调传递给 return 您希望作为分组依据的值(正如您提到的,您正在使用 laravel-可翻译包):
$posts = Post::with('category')->get()->groupBy(function ($post, $key) {
return $post->category->getTranslation('title', 'fr');
})->all();
你可以这样使用:
$posts = Post::all()->groupBy('category_id')->get();
然后在 blade 文件中你可以 foreach 选项卡并通过 category_id
找到一个名称