【问题标题】:Laravel controllers and routes in packages?Laravel 控制器和包中的路由?
【发布时间】:2014-08-20 17:54:07
【问题描述】:

我在将控制器注册到我的包中的路由时遇到问题。

据我从官方文档中了解到,我只需要简单地为其添加前缀并使用我的命名空间,尽管我总是收到 xyzclass not found 的错误。

任何人都可以向我解释我怎样才能完成这项工作?

-- Vendor -- Package |-- composer.json |-- composer.lock |-- public |-- src | |-- Vendor | | -- Package | | -- PackageServiceProvider.php | |-- config | |-- controllers | | -- MyController.php | |-- lang | |-- migrations | |-- routes.php | -- views |-- tests

我在我的 serviceprovider 文件中加载了我的 routes.php。 我在 MyController.php 中创建和索引函数并在我的 routes.php 中分配它。

Route::contorller('myctrl', 'Vendor\Package\MyController');

理论上我应该能够访问 mydomain.com/myctrl 并且它应该会返回给我 我在 MyController 的 index 函数中定义的。但实际上我收到一条错误消息,说 Class Vendor\Package\MyController 不存在。任何建议或帮助应该如何工作或如何工作?

【问题讨论】:

    标签: php laravel laravel-4 package laravel-routing


    【解决方案1】:

    我猜我很笨,忘记了一些小细节。 下次我应该使用适当的命名空间,将控制器文件夹添加到我的 composer.json 也有帮助。

    我在这里找到了有关如何执行此操作的详细说明: https://stackoverflow.com/a/18137352/1397967

    【讨论】:

      【解决方案2】:
      Route::contorller('myctrl', 'MyController');
      

      这是链接到src/controllers/ 而不是vendor

      【讨论】:

      • 尝试作曲家转储自动加载
      • 相同。 ReflectionException 类 MyController 不存在
      猜你喜欢
      • 2017-02-27
      • 2023-03-27
      • 2017-03-05
      • 2013-11-15
      • 1970-01-01
      • 1970-01-01
      • 2014-07-20
      • 1970-01-01
      相关资源
      最近更新 更多