关于交易,我已经看到了这样做的两种方式,它们的区别在于两者和它的好处?
回购中的这些代码。
示例1常用方法
DB::transaction(function () {
});
这个例子的目的是什么?
public function createCustomer(Request $request, $id)
{
$self = $this;
return $this->model->getConnection()->transaction(function () use ($self, $request, $id) {
});
}
答案 0 :(得分:1)
实际上,当您使用以下代码时:
DB::transaction(function () {
// ...
});
Laravel将使用config/.env
文件中提供的默认连接,但如果您要为模型使用不同的连接,则可以使用以下代码,例如:
return $this->model->getConnection()->transaction(...);
在这种情况下,您的模型应包含一个受保护的属性,以用作其连接,例如:
class SomeModel extends Model {
protected $connection = 'pgsql';
}
那就是它。