我有三张桌子
发布(id,title,image) Post_categories(id,post_id,category_id) 类别(标识,标题)
我是laravel的新手。我正在尝试获取单个帖子以及与该帖子相关的所有类别。我成功地做到了这一点,但现在我想将这些类别的id与原始类别表进行匹配,以获取每个类别名称。
到目前为止,这就是我发布帖子及其所有类别
控制器
public function edit_post($id) {
$postID = decrypt($id);
if(!is_numeric($postID) or empty($postID) or strlen($postID) < 1)
return redirect('/user-panel/posts');
$post['categories'] = Post::findOrfail($postID) -> categoriesRelatedPost;
$post['post'] = Post::findOrfail($postID);
return view('dashboard.edit_post') -> with($post);
}
模型
public function categoriesRelatedPost() {
return $this -> hasMany('App\Post_Category');
}
我现在唯一想要的是将那些 category_id 与类别表和提取类别名称相匹配。请帮忙
答案 0 :(得分:0)
我相信您应该能够在Post
模型中执行以下操作:
public function categories()
{
return $this->belongsToMany('App\Category', 'post_categories');
}
如果这不是一个选项,您可以Post_Category
与Category
建立关系并执行Post::findOrfail($postID)->categoriesRelatedPost->category;
答案 1 :(得分:0)
结帐this laracast视频,它完美地解释了这个概念,并会帮助你。