【问题标题】:Illuminate\Contracts\Container\BindingResolutionException Target class [UserControl] does not existIlluminate\Contracts\Container\BindingResolutionException 目标类 [UserControl] 不存在
【发布时间】:2021-10-19 15:57:28
【问题描述】:

我目前正在为我的学校做一个待办事项列表项目,我正在尝试创建一个名为 showUser 的 UserControl 方法。我需要它能够向用户显示 dd('hello');显示,但运行时会带来 目标类(用户控件)不存在

如果您需要帮助,我们将不胜感激。谢谢。

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;

class UserControl extends Controller
{
    

        public function showUsers()
        {
           return view('home');
        }


}
//this is the UserControl.php controller

//这是web.php路由

<?php

use Illuminate\Support\Facades\Route;
use Illuminate\http\request;

Route::get('/', [UserControl::class, 'showUsers']);

//这是我在控制器中的controller.php文件

<?php

namespace App\Http\Controllers;

use Illuminate\Foundation\Auth\Access\AuthorizesRequests;
use Illuminate\Foundation\Bus\DispatchesJobs;
use Illuminate\Foundation\Validation\ValidatesRequests;
use Illuminate\Routing\Controller as BaseController;

class Controller extends BaseController
{
    use AuthorizesRequests, DispatchesJobs, ValidatesRequests;
}

//这是views文件夹中的master.blade.php文件

<!DOCTYPE HTML>
    <html lang="en">
        <head>
            <meta charset="UTF-8">
            <title>My Application</title>
        </head>
        <body>








 @yield('content')









 @yield('scripts')

        </body>
    </html>

//最后这是视图文件夹中的home.blade.php文件

@extends('includes.master')




@section('content')

{{$channel}}


@endsection






@section('scripts')

<script>
    
</script>

@endsection

【问题讨论】:

    标签: php laravel controller


    【解决方案1】:

    您在文件web.php 中使用的类UserControl::class 表示根命名空间\UserControl::class 中的一个类,而不是您的目标\App\Http\Controllers\UserControl::class。要这样定义它,请为其提供完整的命名空间或(如果多次使用)设置 use 指令。

    在你的 web.php 中使用完整的命名空间

    
    Route::get('/', [\App\Http\Controllers\UserControl::class, 'showUsers']);
    

    或者设置在使用中;

    
    use App\Http\Controllers\UserControl;
    
    Route::get('/', [UserControl::class, 'showUsers']);
    

    【讨论】:

    • 一直将此作为错误 Illuminate\Contracts\Container\BindingResolutionException 目标类 [UserControl] 不存在。
    • 可能你已经设置好了路由缓存,修改后尝试运行php artisan cache:clearphp artisan route:cache
    猜你喜欢
    • 2021-08-17
    • 2021-09-02
    • 1970-01-01
    • 2021-06-24
    • 2021-09-15
    • 1970-01-01
    • 2021-09-04
    • 2021-05-12
    • 1970-01-01
    相关资源
    最近更新 更多