Laravel 5.1 移除控制器

Posted

技术标签:

【中文标题】Laravel 5.1 移除控制器【英文标题】:Laravel 5.1 remove controller 【发布时间】:2016-04-14 01:23:30 【问题描述】:

我对 Laravel 5.1 有一个简单的问题。我使用 php artisan 命令创建了一个控制器:

php artisan make:controller PageSettings

但这是错误的,因为我真的想在 Admin 文件夹中创建这个控制器,如下所示:

php artisan make:controller Admin/PageSettings

现在我想摆脱旧的 PageSettings 控制器。可以手动删除我的旧 PageSettings.php 吗?或者还有什么需要做的?

【问题讨论】:

***.com/a/60370335/4650866 【参考方案1】:

手动删除控制器即可。只需检查 routes.php 是否有到该控制器的路由并将其也删除。

【讨论】:

【参考方案2】:

如果您只是创建它并发现您做错了,您可以手动删除该文件,仅此而已。但是,当您已经在 routes.php 中向此控制器添加了路由时,您应该从 routes.php 文件中删除它们或更改文件以反映您的新控制器。

【讨论】:

我认为你还需要重新生成 composer 自动加载文件。 也就是说没有通过artisan删除控制器的命令?【参考方案3】:

是的,您可以毫无压力地手动删除。 我会建议你避免更多的错误,你的“phpStrom”软件,从使用这个,如果你通过点击鼠标右键手动删除任何文件->重构->安全删除,然后在删除之前它们将给出所有使用你的地方文件。点击“do refactor”可以删除它。

【讨论】:

【参考方案4】:

我在删除文件时遇到了问题。我尝试运行我的 PHPUnit 测试套件并得到一个看起来像这样的错误:

Warning: include(): Failed opening '/user/home/me/some/file.php' for inclusion (include_path='.:') in /usr/home/me/some/vendor/composer/ClassLoader.php on line 444

我必须运行 composer update 然后 composer dump-autoload。之后,一切正常。

【讨论】:

以上是关于Laravel 5.1 移除控制器的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Laravel 5.1 中从 Blade 调用控制器动作?

Laravel 5.1使用控制器和模型消耗soap wsdl服务

无法在控制器 Laravel 5.1 中检索通过 ajax 发送的数据

在 Laravel 5.1 中传递数据控制器以查看获取未定义的变量

相同的路由但在 Laravel 5.1 路由中调用不同的控制器

在 Laravel 5.1 上的控制器构造函数之前运行中间件?