【发布时间】:2016-05-31 12:39:57
【问题描述】:
如何/在哪里解耦 lumen 下的业务逻辑,远离控制器,最好远离“app/http”目录。
【问题讨论】:
标签: laravel business-logic lumen
如何/在哪里解耦 lumen 下的业务逻辑,远离控制器,最好远离“app/http”目录。
【问题讨论】:
标签: laravel business-logic lumen
在互联网上搜索了一种明确的方法来解耦我的业务逻辑后,我决定开始试验。对我来说,以下工作就像一个魅力。
在“app\Objects”下创建一个新目录。请记住,我选择将我的“对象”命名为个人喜好,请随意命名它适合您的任何名称。
对于此示例,我的新文件位于“app\Objects\testObject.php”下:
namespace App\Objects;
class testObject
{
public function businessLogicTest ()
{
// some database calls would go here
// response here
return 'This is some business logic response';
}
}
然后在您的“app\Http\Controllers\Controller.php”下添加以下“使用 App\Objects\testObject”,然后实例化您的逻辑:
namespace App\Http\Controllers;
use Laravel\Lumen\Routing\Controller as BaseController;
use App\Objects\testObject;
class Controller extends BaseController
{
public function helloWorld ()
{
$test = new testObject();
echo $test->businessLogicTest();
}
}
一旦您对目录结构感到满意,就可以继续在新的业务逻辑层下使用数据库。希望它有所帮助:-)
【讨论】: