首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >通过自定义枢轴类型获取所有枢轴表列

通过自定义枢轴类型获取所有枢轴表列
EN

Stack Overflow用户
提问于 2015-06-26 22:28:31
回答 1查看 58关注 0票数 1

我有一个多到多的关系,其中枢轴表有大约20个额外的列。我正在使用自定义的枢轴类,并且在访问关系上的->pivot属性时,我已经成功地设置了返回该类实例的代码。

$supplier->products->pivot返回自定义的枢轴类。

但是,当我想要访问数据时,我可以在belongsToMany关系中手动定义pivot类的所有单独属性(顺便说一句,它扩展了数据透视),如下所示:

return $this->belongsToMany(Product::class, ['prop1', 'prop2', 'prop3'])

...But,我如何检索类的所有枢轴数据,而无需手动定义它们,因为它将关系声明与类绑定得很近?这有可能吗。如果不是,它将使可维护性成为一个皮塔!理想情况下,如果withPivot有一个旗子来实现这一切,那就太好了!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-06-28 11:10:33

在我的情况下,我发现更容易将所有数据分离到一个单独的表和模型中,并在透视表中添加一个外键到附加表记录中。这允许我使用“正常”模型处理在Laravel和意味着我不需要混乱的问题,这样的问题!

我的用例是一个多到多的产品和供应商的模式,每个供应商都有自己的产品数据,即价格、库存、运输成本/时间等,所以我将所有这些从支点转移到了SupplierProduct模型。

我将把这个问题留在这里,因为虽然这不是问题的直接答案(我担心答案是“否”),但这是一个可行的解决方案,可以节省相当多的编码挫折感!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31083050

复制
相关文章

相似问题

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