![](/img/trans.png)
[英]Class 'App\Http\Controllers\Controller' not found in Laravel 5.2
[英]Class 'App\Http\Controllers\Controller' not found - Laravel 5.2
我是新來的,但我已經在這里檢查了有關我的問題的所有解決方案,但仍然沒有解決。
我想在 Laravel 5.2 中使用教程創建簡單的應用程序,但我無法讓我的控制器工作。
我將我的應用程序命名為“test”,這是一個代碼:
頁面控制器.php:
<?php
namespace App\Http\Controllers;
use App\Http\Controllers\Controller;
class PagesController extends Controller
{
public function getAbout(){
return view('about');
}
}
路線.php:
Route::get('about', [
'as' => 'about',
'uses' => 'PagesController@getAbout'
]);
和 Controller.php(默認):
<?php
namespace test\Http\Controllers;
use Illuminate\Foundation\Bus\DispatchesJobs;
use Illuminate\Routing\Controller as BaseController;
use Illuminate\Foundation\Validation\ValidatesRequests;
use Illuminate\Foundation\Auth\Access\AuthorizesRequests;
class Controller extends BaseController
{
use AuthorizesRequests, DispatchesJobs, ValidatesRequests;
}
你看這里有什么問題嗎? 我確定所有文件都在正確的文件夾中。
如果App/Http/Controllers/文件夾沒有Controller.php文件,也會發生錯誤。
確保文件存在。
為了使一切正確,運行這個。
php artisan app:name YourApplicationName
它會將 app 中的所有內容更改為您的應用程序名稱,因此您無需到處手動編寫測試
請更正頁面控制器中的命名空間
<?php
namespace test\Http\Controllers;
use test\Http\Controllers\Controller;
class PagesController extends Controller
{
public function getAbout(){
return view('about');
}
}
更新 :
更改控制器中的命名空間后,請轉儲自動加載您的作曲家:
Composer 轉儲自動加載
我的控制器現在看起來像這樣:
<?php
namespace test\Http\Controllers;
use test\Http\Controllers\Controller;
class PagesController extends Controller
{
public function getAbout(){
return view('about');
}
}
錯誤仍然存在
更新:
好的,我創建了一個新項目,它最終有效。 我認為所有的答案都會對類似的問題有所幫助:)
感謝幫助 !
在我來說,我有兩個命名一個控制器和一個在模型controller.php
namespace App\Http\Controllers;
namespace App\Http\Models;
第二個干擾了第一個
我刪除了第二個,瞧......代碼有效
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.