2014-12-25 8 views
5

У меня есть Banks стола и отдельная таблица с servicesжадная загрузка с параметрами - Laravel

$bank = Banks::find(1); 
echo $bank->service(1); // print bank with that service (serviceId 1) 

Это Возможное нетерпеливые нагрузками всех банок с service_id = 1 ..somewhat как

Bank::with('service(1)')->get(); 

Спасибо заранее

+0

Вы хотите сделать так: ** где service_id в (1) ** внутри модели? –

ответ

8

Конечно! Метод with принимает закрытие для фильтрации активной загрузки.

Bank::with(array('service' => function($query){ 
    $query->where('id', 1); 
}))->get(); 
+0

Вы можете добавить/передать свой собственный параметр, используя «use» ' Bank :: with (array ('service' => function ($ query) use ($ param) { $ query-> где ('id', $ param); })) -> get(); ' – Tom

0

Используйте WhereIn для вашей модели, и вы должны передать любое число внутри массива.

$Data = Banks::whereIn('service_id ', array(1, 2, 3))->get(); 
var_dump($Data); 

Я использую var_dump и вы должны выбрать свой собственный coloumn, чтобы получить вашу потребность.

Docs: Eloquent, Advance Where