【发布时间】:2017-11-09 14:01:50
【问题描述】:
在 Controller 中调用数据库事务是一种好习惯吗? 如果没有,我应该在哪里正确调用数据库事务?
【问题讨论】:
标签: database laravel controller laravel-eloquent
在 Controller 中调用数据库事务是一种好习惯吗? 如果没有,我应该在哪里正确调用数据库事务?
【问题讨论】:
标签: database laravel controller laravel-eloquent
也取决于项目的大小和个人喜好。但是在控制器之外调用数据库事务是一种更好的做法,因为它使您的代码清晰易懂。您也可以对多个控制器使用相同的功能,从而减少冗余编码的痛苦。您可以搜索 SOA(面向服务的架构)并将其用于更好的实践。
【讨论】:
或者你可以搜索命令总线模式
https://github.com/tillkruss/laravel-tactician
这个包使用 Laravel 轻松实现了命令总线模式。它带有一个数据库事务中间件,命令总线非常适合将逻辑从控制器转移到命令处理程序的可扩展应用程序。
【讨论】: