模型的事件中如何确保代码块中关联的数据都写入后才执行Observers的方法呢?
我现在想保存订单数据
1.订单表
2.订单详情表
DB::beginTransaction();
try {
1.保存订单数据
2.保存订单数据
DB::commit();
}catch (\Exception $e){
DB::rollBack();
Log::error('下单失败', ['exception' => $e]);
}
我现在创建了订单的Observers
<?php
namespace App\Observers;
use App\Models\Order;
use Illuminate\Support\Facades\Log;
class OrderObserver
{
public $afterCommit = true;
public function saved($order){
Log::info("saved执行");
Log::info($order);
}
}
推荐文章: