php - 未找到 Laravel API 控制器 - “目标类 **** 不存在”
问题描述
我知道这在以后的版本中有点突破性的变化,我已经尝试了迄今为止通过stackoverflow和在线找到的所有方法来纠正并寻找拼写错误,但如果有人能提供帮助,我会有点卡在这里。
Laravel v8.6 - 全新安装
我的 api.php 和我尝试过的路线(显然不是同时)
<?php
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Route;
use app\Http\Controllers\API\AssetTrackController;
//Route::get('/assettracking', [AssetTrackController::class, 'index']);
//Route::get('/assettracking', 'AssetTrackController@index');
//Route::resource('/assettracking', [AssetTrackController::class, 'index']);
Route::get('/assettracking', [AssetTrackController::class, 'index']);
Route::resource('/assettracking', AssetTrackController::class)->only([
'index'
]);
我的控制器
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use app\Models\Assettrack;
class AssetTrackController extends Controller
{
/**
* Display a listing of the resource.
*
* @return \Illuminate\Http\Response
*/
public function index()
{
return DB::table('assettrack')->whereRaw('ID < 420000000')->get();
}
我尝试添加到 RouteServiceProvider
protected $namespace = 'App\\Http\\Controllers';
/**
* Define your route model bindings, pattern filters, etc.
*
* @return void
*/
public function boot()
{
$this->configureRateLimiting();
$this->routes(function () {
Route::prefix('api')
->middleware('api')
->namespace($this->namespace)
->group(base_path('routes/api.php'));
Route::middleware('web')
->namespace($this->namespace)
->group(base_path('routes/web.php'));
});
}
控制器路径:HeatMAP/app/Http/Controllers/API/AssetTrackController.php api.php 路径:HeatMAP/routes/api.php
根据我已经找到的解决方案,我已经看过并且似乎无法解决这个问题。我觉得这个人正盯着我的脸。任何帮助表示赞赏。谢谢。
解决方案
您的控制器命名空间是错误的。
假设您的控制器按以下目录顺序排列:
app\Http\Controllers\Api\AssetTrackController.php
您应该将其修复为:
namespace App\Http\Controllers\Api;
推荐阅读
- react-native - 带有有效负载 {"name":"Home"} 的操作 'NAVIGATE' 未被任何导航器处理
- windows - 查找所有 DHCP 和 DNS 服务器
- python - 在 Firefox 中的 Selenium 中弹出句柄
- html - 无法解析关键字“pub_date_year”
- wpf - 如何从 TabControl 获取 MouseMove 鼠标事件?
- intellij-idea - 是否可以在 scalac 中仅打开特定类型的警告?
- opencv - 使用opencv将RGB图像转换为灰度
- macos - macOS 用户:PDF 在 emacs 的 pdf-tools 中看起来很模糊
- compiler-construction - 在词法分析中使用 SIMD
- java - 为什么在树遍历的 PreOrder、InOrder 和 PostOrder 中,LEFT 总是在 RIGHT 之前遍历