1
我有這個表:關係
topics
-------
id | title
------+----------
1 | Sport
2 | Social
posts_topics
------------
id | post_id | topic_id
------+--------------+------------
1 | 1 | 1
2 | 1 | 2
posts
------
id | title
-----+----------
1 | A Test Post
我存儲在topics
表主題和使用posts_topics
我posts
表和topics
之間的鏈接現在我想選擇的title
選擇帖子時的主題,
經過在StackOverflow和谷歌搜索後,我寫了這個模型:
Posts.php
public function post_topics()
{
return $this->hasMany('App\PostTopics');
}
PostTopics.php
public function topics()
{
return $this->hasManyThrough('App\Posts', 'App\Topics', 'id', 'topic_id');
}
Topics.php
protected $table = 'topics';
,並在我的控制器我試圖獲取:
$post = Posts::with('post_topics')->find($post_id);
dd($post);
現在,此代碼將工作,但不能返回標題的主題。
你有一個多對多的關係,'posts_topics'作爲數據透視表。你可以在這裏閱讀:https://laravel.com/docs/5.4/eloquent-relationships#many-to-many – patricus