Laravel по-русски

Русское сообщество разработки на PHP-фреймворке Laravel.

Ты не вошёл. Вход тут.

#1 04.03.2015 03:15:26

Трудности с Relationship

Добрый день, у меня возникла трудность с выборкой данных.
Имеем две таблицы:

City
   id
   name
   population

Street
   id
   name
   city_id

Используя belongsTo и hasMany можно найти все Street принадлежащие конкретному City
и City, которому принадлежит конкретная Street. Это понятно.
Но как выбрать все Street, которые принадлежат разным City, у которых population больше определенного числа.

Грубо говоря: $streets = City::where('population','>','100000')->streets,
естественно это не будет работать с коллекциями.

Заранее спасибо.

Не в сети

#2 04.03.2015 07:30:53

Re: Трудности с Relationship

City::whereHas('streets', function($q) {
    $q->where('population', '>',100000));
})->get();

Не в сети

#3 04.03.2015 08:26:47

Re: Трудности с Relationship

наверное всё-таки:

PHP
Street::whereHas('city', function($query) {
    
$query->where('population''>'100000);
})->
get();

всё-таки мы же выбираем улицы, а не города.

Не в сети

#4 04.03.2015 18:54:34

Re: Трудности с Relationship

Всем огромное спасибо за помощь! Добавлю один момент для тех, кто столкнется с такой же проблемой.

$population = 100000;

$streets = Street::whereHas('city', function($query) use ($population) {
    $query->where('population', '>', $population );
})->get();

Не в сети

Подвал раздела