Laravel 5.2将控制器绑定到抽象路由

时间:2017-04-10 10:40:06

标签: php laravel laravel-5.2

我正在将用Laravel 4.2编写的应用程序升级到Laravel 5.2。 我的控制器有很长的命名空间,并希望缩短它们。

例如:

CustomServiceProvider.php

public function register()
{
    $this->app->bind('Shortname\Somecontroller', 'Really\Really\Long\Name\Somecontroller');
}

routes.php文件

$router->get('someroute', ['uses' => 'Shortname\Somecontroller@someFunction']);

可以在自定义服务提供商内部使用,并且可以在Laravel 4.2和Larave 5.1中使用。在我开始迁移到Laravel 5.2后,它停止了工作。

最近我解决的问题是这个问题报告:https://github.com/laravel/framework/issues/14920但它也不起作用。

这适用于例如:

routes_alternative.php

$router->get('someroute', ['uses' => 'Really\Really\Long\Name\Somecontroller@someFunction']);

我已尝试Really\Really\Long\Name\Somecontroller::class并将所有内容移至RouteServiceProvider。我还尝试了artisan route:clearartisan cache:clearartisan dump-autoloadartisan clear-compiled以及各种其他作曲家和工匠诡计。

所有操作都会导致异常:

  

Route.php第280行中的ReflectionException:   类Shortname \ Somecontroller不存在

有人有类似的经验并且能够解决它吗?

0 个答案:

没有答案