如何通过分页从laravel中的产品表中获取未订购的产品?

时间:2017-05-18 16:38:51

标签: laravel laravel-eloquent laravel-query-builder

我有两张桌子 产品表:列(id,product_name,product_image,价格) 订单表:列(id,Product_id,user_id,ordered_on)

我有一个列表页面(最初我列出了产品表中的所有产品) 如果产品已添加到购物车中,则必须根据用户将其从购物车中移除。

我写了这样的查询:

 $menuspecial=Product::paginate(10)->toArray();
 foreach($menuspecial as $menu){
        $menuinfo = Cart::where('product_id',$menu['id'])->where('user_id',$id)->first();
        if(!isset($menuinfo)){
            $menuvalue[] = $menu->get();
        }

在api响应期间,我没有收到分页数据(例如下一个网址,页面......)

提前致谢。

1 个答案:

答案 0 :(得分:0)

您想要删除产品菜单中再次出现的购物车商品。这样做。

    $cartProducts = Cart::where('user_id',$id)
        ->get()
        ->pluck('product_id')
        ->toArray();

    $productMenu = Product::whereNotIn('id', $cartProducts)
        ->paginate(10);