首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Laravel HasManyThrough和BelongsToMany在我的情况下不起作用。这是数据库结构问题吗?

Laravel HasManyThrough和BelongsToMany在我的情况下不起作用。这是数据库结构问题吗?
EN

Stack Overflow用户
提问于 2022-11-15 21:27:27
回答 1查看 31关注 0票数 -1

我有三张桌子:

代码语言:javascript
运行
复制
products table
- id
- title
- etc.
代码语言:javascript
运行
复制
purchases table
- id
- code
- etc.
代码语言:javascript
运行
复制
purchase_products table
- id
- purchase_id
- product_id
- qty
- etc. 

我的目标是为一个单一的产品回收购买。下面的关系对我不起作用。在belongsToMany中尝试了不同的方法,但也不起作用。

代码语言:javascript
运行
复制
$this->hasManyThrough(
            Purchase::class,
            PurchaseProduct::class,
            'purchase_id',
            'product_id',
            'id',
            'id'
        );

以一种简单的方式,我可以通过product_id获取所有采购产品,然后检索采购,但是我需要一种关系才能工作,因为Laravel因为我想在资源上显示采购。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-11-15 21:55:28

产品模型

代码语言:javascript
运行
复制
class Product {
    public function purchases()
    {
         return $this->belongsToMany(Purchase::class, 'purchase_products', 'product_id', 'purchase_id');
    }
}

采购模型

代码语言:javascript
运行
复制
class Purchase {
    public function products()
    {
         return $this->belongsToMany(Product::class, 'purchase_products', 'purchase_id', 'product_id');
    }
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/74452382

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档