2016-05-11 2 views
1

Ситуация: В моем laravel project. Ниже приведены 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

Я предполагаю, что вы используете отношения один-ко-многим для Venues к Showtimes?

Вы могли бы попробовать что-то вроде:

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

я действительно использую это для мобильного приложения, как веб-службы. Когда пользователь запрашивает фильм по id. Мне нужно отправить подробные сведения о фильме с ближайшими местами и сеансами в каждом месте. В столовых фильмах и местах есть сводная таблица с именем movie_venue. Его основным ключом является внешний ключ таблицы showtimes. Итак, как я могу создать связь между фильмом и местом встречи, а затем и показом. Надеюсь, это имеет смысл. –

+0

Я обновил свой ответ. – RW24

+0

Благодарим за помощь –

Смежные вопросы