Laravel 5 路由直接调用控制器
Posted
技术标签:
【中文标题】Laravel 5 路由直接调用控制器【英文标题】:Laravel 5 routes call controller directly 【发布时间】:2015-10-02 00:30:55 【问题描述】:我正在尝试像这样在 Laravel 5 的 routes.php 中直接调用控制器:
Route::get('/', function()
if (\Auth::guest())
$controller = new \App\Http\Controllers\ConstructorController;
else
$controller = new \App\Http\Controllers\HomeController;
return $controller->index();
);
但是,我收到以下错误:
routes.php 第 109 行中的 FatalErrorException:类 'HomeController' 不是 找到了
我错过了什么?
谢谢
【问题讨论】:
家庭控制器? :) 您是否在 \App\Http\Controllers 命名空间中定义了 HomeController 类? 根据您在示例中所做的事情,您最好使用中间件laravel.com/docs/5.1/middleware 如建议..这里最好使用中间件。它更容易实现和理解 我认为您的命名空间设置为 App\Providers 文件夹内 RouteServiceProvider 中的 App\Http\Controllers。 您应该检查命名空间并使对象删除路径直到命名空间。 【参考方案1】:尝试做一个composer dump-autoload
【讨论】:
以上是关于Laravel 5 路由直接调用控制器的主要内容,如果未能解决你的问题,请参考以下文章
使用ajax从控制器调用函数的新路由或其他方式? Laravel 5.2,阿贾克斯