1
相關的我在我的數據庫樹表(帖子標籤Post_tag(透視表))兩個表中進行選擇:雄辯的ORM(laravel):從數據透視表
- 帖子(編號,內容,標題,.. 。)
- 標籤(ID,TAG_NAME)
- post_tag(ID,POST_ID,TAG_ID)
現在我的問題是關於我如何選擇具有相同標籤的崗位,例如所有帖子:選擇所有與帖子1具有類似標籤的帖子。 我有創造的職位和標籤表之間的關係: 在職位表:
public function tags(){
return $this->belongsToMany('App\Tag');}
在標籤表:
public function posts(){
return $this->belongsToMany('App\Post');}
我的嘗試:
public function similar_tags($id)
{
$post = \App\Post::find($id);
$all_posts = \App\Post::where('id','<>',$id)->where('catg_id','=',$post->catg_id);
$result=array();
if(count($post->tags)){
foreach ($post->tags as $tag) {
$all_posts = \App\Post::with('tags')->where('id','=',$id)->get();
foreach ($all_posts as $post) {
$result[]=$post->post_id;
}
}
return view('home',compact('result'));
;
}else{
$fa=0;
return view('home',compact('fa'));
}
}
你的意思是「獲取多個標籤的帖子」? – Drudge
@Drudge獲得具有相同標籤不必要的帖子所有標籤你是否得到它? –
是的,但你可以發佈你試過的代碼? – Drudge