当插入数据数组时,使用whereIn的Laravel查询无法正常工作

时间:2019-02-18 08:28:26

标签: laravel

我尝试使用whereIn获取要升级的数据,但是查询给出了错误。 在whereIn中,如果使whereIn('category_id',[123,2323])没有错误。

但是当我尝试从request($ data2 = $ request-> category;)获取数据时,我无法与whereIn一起使用

  $promotions = Promotion::with('product')->with('category')->whereHas(
        'category',
        function ($q) {
            $data2 = $request->category;

            $q->whereIn('category_id', $data2);
        })
        ->paginate(9);

1 个答案:

答案 0 :(得分:1)

您需要使用use($request)

$promotions = Promotion::with('product')->with('category')->whereHas(
    'category',
    function ($q) use ($request){
        $data2 = $request->category;

        $q->whereIn('category_id', $data2);
    })
    ->paginate(9);

$ request->类别的样本数据。我将数据作为json返回并使用javascript console.log()

显示

enter image description here