Laravel whereIn来自模型查询

时间:2015-08-05 15:10:41

标签: laravel eloquent

我有以下代码:

$my_companies = UserLocation::select('my_company_id')->where('user_id', Auth::user()->id)->get();

$products = Product::select(array('id', 'code', 'name', 'um', 'VAT'))
        ->whereIn('my_company_id', array($my_companies))
        ->orderBy('name', 'ASC')

但我没有显示任何记录。

如果我把常量->whereIn('my_company_id', [1,2])起作用,我可以看到记录。

错误在哪里?

提前谢谢!

1 个答案:

答案 0 :(得分:2)

使用lists方法获取ID数组:

$companies = UserLocation::where('user_id', auth()->id())->lists('my_company_id');

$products = Product::select(['id', 'code', 'name', 'um', 'VAT'])
                   ->whereIn('my_company_id', $companies)
                   ->orderBy('name', 'ASC');