首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Laravel雄辩的选择查询付款方法

Laravel雄辩的选择查询付款方法
EN

Stack Overflow用户
提问于 2018-06-10 12:03:02
回答 1查看 663关注 0票数 0

我在mysql中设计了3个表,CreditCardPayment,WireTransfer。支付表有列payment_mode,它存储使用的支付方式(信用卡或贝宝)。在CreditCardPayment & WireTransfer中,我从支付表中存储支付id。

现在如何使用支付模式(信用卡或贝宝表中的详细信息)从付款表获取所有付款?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-06-10 12:11:04

您必须做多态关系支付实体和其他实体(CreditCardPayment,WireTransfer)。

在添加以下列时添加用于支付的迁移:

  • paymentable_type (字符串)
  • paymentable_id (整数)

在Payment.php (实体)中,您应该添加以下函数:

代码语言:javascript
运行
复制
public function paymentable() {
    return $this->morphTo();
}

在CreditCardPayment.php,您应该添加以下函数:

代码语言:javascript
运行
复制
public function payments(){
    return $this->morphMany(Payment::class, 'paymentable');
}

在WireTransfer.php,您应该添加以下函数:

代码语言:javascript
运行
复制
public function payments(){
    return $this->morphMany(Payment::class, 'paymentable');
}

注:“支付”方法中的“支付”是您的支付实体类。

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

https://stackoverflow.com/questions/50783486

复制
相关文章

相似问题

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