使用 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']);
Run Code Online (Sandbox Code Playgroud)
在 Laravel 文档中,Routes 控制器类必须像这样定义
// Using PHP callable syntax...
Route::get('/users', [UserController::class, 'index']);
// Using string syntax...
Route::get('/users', 'App\Http\Controllers\UserController@index');
Run Code Online (Sandbox Code Playgroud)
目标类
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
class SayhelloController extends Controller
{
public function index($name = null)
{
return 'Hello '.$name;
}
}
Run Code Online (Sandbox Code Playgroud)
所以我确实做到了。
我正在使用 laravel 7.x 版本。我想安装 Laravel 护照。但是当我输入composer require laravel/passport时出现错误。* 使用版本 ^8.1 for laravel/framework ./composer.json 已更新 使用包信息加载 composer 存储库 更新依赖项(包括 require-dev) 您的需求无法解析为一组可安装的包。
问题 1 - 结论:不要安装 laravel/framework v8.1.0 - laravel/ui v2.4.0 需要照明/支持 ^7.0 -> 满足 laravel/framework[v7.28.1],illumination/support[7.x-dev , v7.0.0, v7.0.1, v7.0.2, v7.0.3, v7.0.4, v7.0.5, v7.0.6, v7.0.7, v7.0.8, v7.1.0, v7.1.1, v7.1.2, v7 .1.3、v7.10.0、v7.10.1、v7.10.2、v7.10.3、v7.11.0、v7.12.0、v7.13.0、v7.14.0、v7.14.1、v7.15.0、v7.16.0、v7.16.16 , v7.17.0, v7.17.1, v7.17.2, v7.18.0, v7.19.0, v7.19.1, v7.2.0, v7.2.1, v7.2.2, v7.20.0, v7.21.0, v7.22.0, v7 .22.1、v7.22.2、v7.22.3、v7.22.4、v7.23.0、v7.23.1、v7.23.2、v7.24.0、v7.25.0、v7.26.0、v7.26.1、v7.27.0、v7.27.0.07 , v7.28.1, v7.3.0, v7.4.0, v7.5.0, v7.5.1, v7.5.2, v7.6.0, v7.6.1, v7.6.2, v7.7.0, v7.7.1, v7.8.0, v7 …