Я пытаюсь получить «отзывы» из моей базы данных, где пользователь из МХ (например), так что, у меня есть это:Laravel4, жадная загрузка не работает
Review::with(array('user' => function($query)
{
$query->where('country_code', '=', 'MX');
}))
->with('user.country','pictures')
->where('shop_id',Input::get('id'))
->orderBy('id','DESC'))
->get()
->toArray()
Но, кажется, как где ('country_code', '=', 'MX') не учитывается, потому что извлекает все отзывы, и мне просто нужны отзывы, написанные пользователем из MX.
- пользователя и картина внутри с являются функциями в пределах моей модели пользователя
- country_code это поле из таблицы пользователей
Цель: Просто получить отзывы, написанные пользователь из указанной страны и тестировал что-то вроде этого:
Review::where('shop_id',Input::get('id'))
->with('user.country','pictures')
->where('users.country_code','MX')
->orderBy('id','DESC'))
->get()
->toArray()
Но не работает, потому что говорит: Unknow column users.country_code где ....
Это правда, работает сейчас .. просто изменить whereHas («» пользователей к whereHas («пользователь» ... Спасибо :) – SoldierCorp
может сделать обзор более чем 1 пользователь – lagbox
Не просто 1 пользователь, а «пользователь» whereHas - это имя функции в моей модели отзыва. – SoldierCorp