生成订单时,返回订单碰时一些不太理解的地方

生成订单时,返回订单碰时一些不太理解的地方
1. 这两个 return $order 为什么要写两次,是否重复了?在事务的闭包外面,只保留最后面的一个返回不可以吗?
2. 我在测试的时候发现一个奇怪的现象,为什么 orders 表的数据能生成,而 orderItems 表中的数据没有生成,既然使用了事务,orders 表中的数据不是也应该回滚吗?

这章就是这里不太理解,希望大神们可以指点迷津!!!

《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
讨论数量: 3
leo

你把第一个 return 注释掉看看会发生什么?建议多关注一下 PHP 语言本身的特性。

如果没有抛出异常,是不会回滚的,你需要关心一下为什么会没有成功创建,自己试着调试一下,对比一下课程代码。

5年前 评论

@leo 感谢,我试试

5年前 评论
DogLoML

第一个 $order 返回到 \DB::transaction 外面,注释掉的话,外面的 $order=null

1年前 评论