我使用Lumen和SQLite DB。我已经尝试过所有我能想到的在Lumen中使用DB::transaction
的东西,但无济于事。我一直都会遇到这样的错误:
ReflectionException: /vendor/illuminate/container/Container.php line 779
我已经尝试将use DB;
放在课堂顶部。我试过use
立面。似乎没什么用。
尝试使用它的简单示例:
DB::transaction(function () use ($attributes, $service) {
$this->person = $this->person->create([]);
// do some other stuff
});
答案 0 :(得分:3)
我自己也很难在流明中使用DB::transaction
进行交易。我最终使用的解决方法是使用全局函数app()
而不是外观来解析数据库,然后像这样使用事务:
app('db')->transaction(function() {
// DB work
});
如果有很多这些,你也可以在变量中缓存调用app('db')
的结果以供重用。它的行为就像DB
上的静态调用一样。