[英]Laravel Class 'App\Http\Controllers\Controller' not found
[英]Laravel 8 Controllers Subfolder routing issues "Class 'App\Http\Controllers\APIControllers\Controller' not found"
我是 laravel 8 框架的新手,我正在處理控制器子文件夾,但我無法訪問我的 Controller 文件。 我正在訪問的 Controller 位於 Controllers/APIControllers 文件夾中,名稱為 LoginController.php 路徑是 Controllers/APIControllers/LoginController
請幫助我找到最佳解決方案。
下面是我的代碼。
api.php
<?php
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Route;
use App\Http\Controllers;
use App\Http\Controllers\APIControllers\LoginController;
Route::middleware('auth:api')->get('/user', function (Request $request) {
return $request->user();
});
Route::get('login',[LoginController::class, 'LoginPage']);
登錄控制器.php
<?php
use App\Http\Controllers;
use Illuminate\Http\Request;
namespace App\Http\Controllers\APIControllers;
class LoginController extends Controller
{
public function LoginPage()
{
return ["name"=>"test"];
}
}
在您的 LoginController 中有一個錯誤,指的是擴展的 Controller class:
<?php
use App\Http\Controllers;
use Illuminate\Http\Request;
namespace App\Http\Controllers\APIControllers;
class LoginController extends Controller
{
public function LoginPage()
{
return ["name"=>"test"];
}
}
引用 Controller class 的頂行應該是:
<?php
use App\Http\Controllers\Controller;
use Illuminate\Http\Request;
namespace App\Http\Controllers\APIControllers;
class LoginController extends Controller
{
public function LoginPage()
{
return ["name"=>"test"];
}
}
將此添加到您的 LoginController 的 header 的第一個頂部
<?php
namespace App\Http\Controllers\APIControllers;
use App\Http\Controllers\Controller;
在此之后添加其他代碼,然后進行硬刷新和檢查。
您在某些代碼行之后編寫了命名空間; 現在在 <?php 行之后移動命名空間。
像下面
namespace App\Http\Controllers\APIControllers;
use App\Http\Controllers\Controller;
use Illuminate\Http\Request;
在此之后,它的工作完美。
您的命名空間應該在 controller 內的 php 標記之后。 然后寫下你的導入行。 您的 controller class 也存在問題 - 應該是這樣的:
<?php
namespace App\Http\Controllers\APIControllers;`enter code here`
use App\Http\Controllers\Controller;
use Illuminate\Http\Request;
class LoginController extends Controller
{
public function LoginPage()
{
return ["name"=>"test"];
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.