当使用 laravel 8 创建一个新项目时,我得到了这个错误。
Illuminate\Contracts\Container\BindingResolutionException 目标类 [SayhelloController] 不存在。http://127.0.0.1:8000/users/john
<?php
use Illuminate\Support\Facades\Route;
Route::get('/', function () {
return view('welcome');
});
Route::get('/users/{name?}' , [SayhelloController::class,'index']);
在 laravel 文档中,Routes 控制器类必须像这样定义
// Using PHP callable syntax...
Route::get('/users', [UserController::class, 'index']);
// Using string syntax...
Route::get('/users', 'App\Http\Controllers\UserController@index');
目标类
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
class SayhelloController extends Controller
{
public function index($name = null)
{
return 'Hello '.$name;
}
}
所以我确实做到了。