php - 错误的控制器被用于编辑路由(使用 Laravel 资源助手)
问题描述
我目前正在使用 laravel 5.4,我偶然发现了一些我无法修复的东西。
我目前正在尝试使用 Laravelresource
助手将路由绑定到控制器:
Route::resource('campaigns', 'CampaignsController');
。
当我执行 a 时,我正确地看到了我的路线PHP artisan:route list
,我将所有 CRUD 端点都绑定到了适当的控制器功能。另外,请注意,我目前正在为所有需要绑定到 CRUD 系统的路线(我正在使用的主要是表单)执行此操作,没有任何问题
话虽如此,每当我尝试编辑 aCampaign
时,都会出现错误:Class App\Http\Controllers\Ads\Campaigns does not exist
我不知道为什么它Campaigns
在我指定控制器时试图寻找CampaignsController
控制器。广告系列路线中的所有内容都正常运行,除了编辑路线。此外,我所有其他路线都有相同的逻辑,从未遇到过这个问题。
知道为什么它在寻找错误的 Controller 吗?
这是我的命名空间声明和文件夹层次结构,没关系(请注意,adsController 的路由声明方式相同,使用方式也相同)
这是我的编辑方法
这是错误
解决方案
您很可能尝试在控制器中注入不存在的类。
如果您没有这样的东西,请查看控制器构造函数或编辑路由:
public function edit(Campaigns $campaigns)
{
}
并确保从有效的命名空间导入广告系列(可能不在App\Http\Controllers\Ads
命名空间中。
如果它没有帮助,请尝试在您的app
目录中查找Ads\Campaigns
以查看它的使用位置。有时问题可能出在应用程序的完全不同的部分。
编辑
还要确保你没有犯任何错字。你有错误,Campaigns
但你的模型可能是Campaign
- 是否有可能在一个地方你s
最后有额外的?
推荐阅读
- c - C指针指针警告
- java - 使用 java 客户端在 AWS 弹性搜索中进行通配符搜索
- ruby - 尝试通过 Capybara 从 Chrome 商店安装扩展程序
- apache-nifi - NiFi 进程组性能(输出端口)
- json - 使用 MockitoJUnitRunner 运行单元测试时如何在 JSON 响应中指定日期格式
- r - 对不同的数据集重复相同的操作
- database - 在 Aurora 自动缩放的实例中没有发生平等的连接分布
- laravel - 在 mutator 中访问相关模型
- nestjs - TypeORM:当我们有一对多和多对一关系时加入
- java - Java中的边界泛型