2016-05-11 96 views
1

情況:在我的laravel項目。以下是4表movie_venue數據透視表電影場館。我需要使用電影模型訪問放映時間。Laravel樞軸表口才關係

$movie = $this->model->find($movie_id); 

$venues = $movie->venues; 

使用雄辯關係我可以訪問場館列表。但不能創建一個從電影模型獲得放映時間的關係。


| movies  | venues | movie_venue | showtimes  | 
----------------------------------------------------| 
| id   | id  | id   |id    | 
| name  | name | movie_id |movie_venue_id | 
| ....  | .... | venue_id |time   | 

回答

1

我假設你正在使用VenuesShowtimes一到一對多的關係?

你可以嘗試這樣的:

foreach ($movies->venues as $venue) { 
    foreach ($venue->showtimes as $showtime) { 
     //do something with your showtime. 
    } 
} 

順便說一句:那豈不是更有意義,從venue,比訪問Showtimes開始?

UPDATE

基於您的評論,你可以嘗試這樣的事:

$movie = Movie::find($id); 
$venues = $movie->venues; 

foreach ($venues->showtimes as $showtime) { 
    // Here you'll get the showtimes per venue. 
} 
+0

我真的用這個移動應用的Web服務。當用戶通過ID請求電影時。我需要在最近的場地和每個場地的放映時間發送電影細節。表格電影和場地都有名爲movie_venue的數據透視表。它的主鍵是放映時間表的外鍵。那麼,我如何創建電影之間的關係,然後放映時間。希望這是有道理的 –

+0

我已經更新了我的答案。 – RW24

+0

謝謝你的幫助 –