为了账号安全,请及时绑定邮箱和手机立即绑定

Laravel Eloquent,使用 whereIn 获取 ids 数组中的所有数据?

Laravel Eloquent,使用 whereIn 获取 ids 数组中的所有数据?

PHP
温温酱 2022-07-16 11:11:54
这是我的代码:$search = request()->get('search');    $conciergerieSelect = request()->get('conciergerie');    $services = Service::get();    $prestations = Prestation::with([        'service:name'    ])    ->whereIn('conciergerie_ids', $conciergerieSelect)    ->where('name', 'regexp', "/$search/i")    ->paginate(100);    return $res = [        'prestations' => $prestations,        'services' => $services    ];我需要得到所有conciergerie_ids等于$conciergerieSelect.conciergerie_ids是一个 id 表。$conciergerieSelect是一个身份证。我尝试使用 whereIn,但出现错误:“提供的 foreach() 无效”谢谢。
查看完整描述

2 回答

?
aluckdog

TA贡献1847条经验 获得超7个赞

whereInLaravel 提供的方法接受一个数组作为第二个参数。


请将子句中的$conciergerieSelect变量替换为:[$conciergerieSelect]whereIn


//...

->whereIn('conciergerie_ids', [$conciergerieSelect])


查看完整回答
反对 回复 2022-07-16
?
qq_遁去的一_1

TA贡献1725条经验 获得超8个赞

在您的帮助下,这里的工作代码:


$search = request()->get('search');

$conciergerieSelect = request()->get('conciergerie');


$services = Service::get();


$prestations = Prestation::with([

    'service:name'

])

->whereIn('conciergerie_ids', [$conciergerieSelect]) <-- 

->where('name', 'regexp', "/$search/i")

->paginate(100);


return $res = [

    'prestations' => $prestations,

    'services' => $services

];


查看完整回答
反对 回复 2022-07-16
  • 2 回答
  • 0 关注
  • 181 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号