Lumen Laravel解除了业务逻辑

时间:2016-05-31 12:39:57

标签: laravel business-logic lumen

如何/在何处将流明下的业务逻辑解耦,远离控制器,最好远离“app / http”目录。

1 个答案:

答案 0 :(得分:0)

在网上寻找一种清晰的决策方式来解耦我的业务逻辑之后,我决定开始尝试。对我来说,以下的作品就像一个魅力。

在" app \ Objects"下创建一个新目录。请记住,我选择了我的名字" 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();    
    }
}

一旦您对目录结构感到满意,请继续使用新业务逻辑层下的数据库使用情况。希望它有所帮助: - )