我正在与Laravel 8合作开发我的项目。我制作了一个名为BackendController
的控制器,并添加了这个index()
方法来调用刀片:
public function index()
{
return view('website.backend.dashboard.index');
}
在web.php
中,我添加了以下路由:
Route::get('/dashboard', 'BackendController@index');
但是当我转到/dashboard
时,它说:
lluminate\Contracts\Container\BindingResolutionException目标类[BackendController]不存在。
我不知道它为什么打印这个,因为控制器已经存在了!所以如果你知道怎么解决,请帮我...
提前感谢。
在Laravel的早期版本中,RouteServiceProvider
包含一个$namespace
属性。此属性的值将自动作为前缀添加到控制器路由定义和对操作
助手
/
URL::action
方法的调用中。在拉威尔8。x、 默认情况下,此属性为null。这意味着Laravel不会自动进行名称空间前缀。发布#laravel-8
那么,试试这个:
use App\Http\Controllers\BackendController;
Route::get('/dashboard', [BackendController::class, 'show'])->name('backend.index');
总之,你应该这样定义你的路线<代码>路由::获取('/dashboard',[\App\Http\Controllers\BackendController::class,'index'])。
更具体地说;在Laravel的以前版本中,RouteServiceProvider
包含一个$命名空间
属性。此属性的值将自动前缀到控制器路由定义和对action
helper/URL::action
方法的调用。在Laravel 8. x中,此属性默认为null。这意味着Laravel不会自动完成命名空间前缀。因此,在新的Laravel 8. x应用程序中,控制器路由定义应该使用标准的PHP可调用语法来定义:
use App\Http\Controllers\UserController;
Route::get('/users', [UserController::class, 'index']);
[复制自Laravel文档。请参阅中的“路由命名空间更新”部分https://laravel.com/docs/8.x/releases]
Laravel 8已经更新了它的路由。
它被记录下来,寻找路由命名空间更新部分
在新的Laravel 8. x应用程序中,控制器路由定义应该使用标准的PHP可调用语法来定义;
use App\Http\Controllers\UserController;
Route::get('/users', [UserController::class, 'index']);
这里有新的文件;https://laravel.com/docs/8.x/routing#basic-路由
我最近开始研究Laravel,并安装了Laravel Framework 8.5。0 下面是我的控制器"UserController.php" 这是我的网站。路由中的php 当我尝试访问http://127.0.0.1:8000/users,它只是用下面的错误击中我 Illumb\Contracts\Container\BindingResolutionException 目标类[UserCont
我的Laravel应用程序在。请理解,这是我第一次申请Laravel。 Illumb\Contracts\Container\BindingResolutionException目标类 [UserController]不存在。 当我尝试以下代码在web.php. 用户控制器文件: 然而,这行得通。 迁移已经运行,表已在数据库中成功创建。 环境: 完整的错误报告在Flare上共享
使用php artisan route:list后,我在Laravel 8中遇到此错误: Illumb\Contracts\Container\BindingResolutionException目标类[Api\UserController]不存在。 我在App\Http\Controllers\Api中有一个控制器: 路线/api.php: 我是新来的
我得到这个错误: Illumb\Contracts\Container\BindingResolutionException目标类[App\Http\Controllers\UserManagementController]不存在。 我想问题出在我的web.php路径上:
我得到这个错误后,通常的安装,为我工作了多年。。。我真的不知道现在发生了什么变化。。有人能帮忙吗?
当使用laravel 8创建一个新项目时,我得到了这个错误。 Illumb\Contracts\Container\BindingResolutionException目标类[SayhelloController]不存在。http://127.0.0.1:8000/users/john 在laravel文档中,Routes控制器类必须这样定义 目标类 所以我确实做到了。