我是新來laravel所以原諒我可能noobish問題。另外,我也研究過所有其他'類似'的問題,但要麼他們沒有重現正確的解決方案,要麼我老實說很難將其解決。Laravel查詢用的hasMany關係
該場景:
我有一個Post模型和一個Subject模型。這是他們目前的樣子。
在post.php中在Subject.php
public function subjects() {
return $this->belongsToMany('Subject', 'posts_subjects');
}
現在
public function posts() {
return $this->belongsToMany('Post', 'posts_subjects');
}
,我需要實現的是:
如果一個查詢參數傳遞給請求(即q =食物)我只想返回包含受試者關係中的主題食物的帖子,而不是其他人。如果沒有通過,則只需顯示一切......
這是我的PostsController的index動作看起來就像個大氣壓。
public function index() {
$q = Input::get('q');
$posts = Post::all();
return View::make('posts.index', ['posts' => $posts]);
}
我該怎麼做呢?將不勝感激一些幫助。 非常感謝
PS。我可以通過此代碼獲取所有帖子。
我想你可能是如何的關係是工作有點混亂。單個帖子是否可以有很多主題(單個帖子是否可以與食品和旅行相關聯)? – user3158900
使用數據透視表的多對多關係意味着在關係的兩邊使用'belongsToMany()'。 –
是的,對不起。我做(做)有belongsToMany兩種型號..我只是改變了一些事情了一下週圍想我可能做錯了什麼,但問題仍然..我能得到的職位從主題模型,但因爲給定的主題我們談論的PostsController,感覺怪異立足於一個不同的模型.. –