0
我需要laravel 5(用雄辩)Laravel关系
帮助(其中加入)我有2个表
模型驱动 司机
- ID
- 公司
型号DriverOnline drivers_online
- ID
- 名
- driver_id
我需要(commany = 1和driver_id = driver.id)seatch结果帮帮我!
我需要laravel 5(用雄辩)Laravel关系
帮助(其中加入)我有2个表
模型驱动 司机
型号DriverOnline drivers_online
我需要(commany = 1和driver_id = driver.id)seatch结果帮帮我!
如果你想只根据条件提取Driver
,你可以这样做:
Driver::with('online')->where('company', 1)->get();
如果该条款上的关系,使用with
并指定一个查询。
$company = 1;
$drivers = Driver::with(['online' => function($query) use ($company)
{
$query->where('company', $company);
}]);
请参阅 “贪婪加载约束”:
https://laravel.com/docs/5.0/eloquent
请留意我的use
的。这允许你将范围的变量包含到你的Closure实例中。
并注意,如果您使用任一解决方案,您必须建立关系。请参阅我分享的链接,了解更多相关信息。
编辑:根据我们的谈话。
$drivers = Driver::where('company_id','=',1)
->with('driversOnline')
->whereHas('driversOnline', function($query) {
$query->where('online','=',1);
})
->get();
''' $驱动=驱动::与([ 'driversOnline'=>功能($查询) { $查询 - >其中( '在线', '=',1); }]) - >其中( 'COMPANY_ID', '=',1) - >得到(); ''' – gibAlex
但让我所有的驱动程序 – gibAlex
如果你只想选择在线驱动程序,你应该反转它。 'DriverOnline :: with('driver') - > where('online',true) - > get();' – Josh