我有以下代码:
$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])
起作用,我可以看到记录。
错误在哪里?
提前谢谢!
答案 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');