【问题标题】:Laravel query many to ManyLaravel 查询多对多
【发布时间】:2018-06-07 09:00:10
【问题描述】:

我需要帮助。我有 2 张桌子 productscategories

获取请求发送类别 ID。我的问题是:如何使用产品模型构建查询??? (查询看起来像这样:输出类别 id 等于 $request-> 类别的产品)。表连接配置好了,我只需要查询,(看了文档,没看懂)

【问题讨论】:

    标签: php laravel laravel-5 eloquent


    【解决方案1】:

    你可以使用:

    $products = Product::whereHas('categories', function($q) use ($categoryId) {
       $q->where('id', $categoryId);
    })->get();
    

    了解querying relationships

    当然你需要配置Product模型和categories关系。

    【讨论】:

      【解决方案2】:

      您说过这是多对多关系,所有关系都已配置,并且您想使用Product 模型来构建查询。在这种情况下,您应该使用whereHas() 方法:

      Product::whereHas('categories', function($q) use($request) {
          $q->where('id', $request->category);
      }))->get();
      

      【讨论】:

        猜你喜欢
        • 2017-09-30
        • 1970-01-01
        • 2020-07-01
        • 1970-01-01
        • 2017-07-30
        • 2020-03-11
        • 2018-11-02
        • 2015-05-29
        • 1970-01-01
        相关资源
        最近更新 更多