Связь модели Post с городом и страной (из модели Location) - PullRequest
0 голосов
/ 29 июня 2019

У меня есть модель Post и модель Location. Я настроил отношение «многие ко многим» так, чтобы $post->getCities и $location->getPosts работали, вводя промежуточную таблицу. Это таблица Locations:

enter image description here

Теперь, что я хочу сделать, чтобы получить все сообщения, которые принадлежат стране? Возможно ли это с имеющимися у меня таблицами и связями?

1 Ответ

0 голосов
/ 29 июня 2019

Если ваш $post->getCities выглядит примерно так

return $this->hasMany(Location::class, ...);

Затем возвращается QueryBuilder, что позволяет вам случайным образом отфильтровать запрос перед выполнением запроса к базе данных:

$post->getCities()->where('country', $yourCountry)->get();

В противном случае, если ваш $post->getCities уже возвращает коллекцию, вы можете применить где метод к коллекции и отфильтровать его на стороне вашего приложения:

$locations = $post->getCities(...);
$locationsByCountry = $locations->where('country', $youtCountry);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...