我将如何着手在 Lumen 中实现驱动程序模式?现在我在 /app/Helpers
中有一个帮助程序 ResponseHandler.php
,它定义了一个 抽象类 ResponseHandler
。
// app/Helpers/ResponseHandler.php
namespace App\Helpers;
use \Symfony\Component\HttpFoundation\Response as HTTPResponse;
abstract class ResponseHandler extends HTTPResponse
{
abstract public function success();
abstract public function fail();
[...]
}
我在子目录 /app/Helpers/Response
中定义了驱动程序 extend ResponseHandler
。驱动程序定义如下:
// app/Helpers/Response/JSON.php
namespace App\Helpers\ResponseHandler;
class JSON extends ResponseHandler
{
public function fail() {
// logic
}
public function success() {
// logic
}
[...]
}
我遇到的问题是,当我尝试在我的 Controller 中的一个函数中使用驱动程序时,Lumen 抛出以下错误:Class 'App\Helpers\ResponseHandler\JSON' not found
。这是我写的 Controller (删除了不相关的部分):
// app/Http/Controllers/ResponseController.php
namespace App\Http\Controllers;
use App\Helpers\ResponseHandler\JSON as Response;
class ResponseController extends Controller
{
public function returnSomething($content) {
[...]
return Response::success($_ProcessedContent);
}
[...]
}
我试过更改 namespace ,但最终导致更多错误,并没有解决这个问题。我怀疑我对 namespace 以及 Lumen 如何使用它们还不够熟悉……但我已经研究这个问题几个小时了,但似乎无法弄清楚。
有更多 Lumen/Laravel 经验的人可以为我阐明这个问题吗?
* [解决方案] * 设计模式是正确的,但我需要运行:
Composer 转储自动加载
一切都写完之后。
最佳答案
您是否尝试过从命令行运行:composer dumpautoload?
关于php - 如何在 Lumen 中使用助手实现驱动程序模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32640929/