我今天第一次使用laravel服务容器.我知道在互联网上有很多东西可以找到,但我找不到解决方案.我正在尝试将接口绑定到类,但是当我这样做时,我收到错误:
目标[App\contracts\UploadService]不可实例化.
这是我的名为UploadServiceContainer的服务容器:
<?php
namespace App\Providers;
use Illuminate\Support\ServiceProvider;
class UploadServiceProvider extends ServiceProvider
{
/**
* Bootstrap the application services.
*
* @return void
*/
public function boot()
{
//
}
/**
* Register the application services.
*
* @return void
*/
public function register()
{
$this->app->bind('App\Contracts\UploadService', 'App\Classes\upload\upload');
}
Run Code Online (Sandbox Code Playgroud)
}
我尝试在我的控制器中实例化它:
public function storeTicket(makeTicketRequest $request,UploadService $upload)
{ }
Run Code Online (Sandbox Code Playgroud)
我在app.php中注册了我的Serviceprovider.而且我也做到了:
php artisan clear-compiled
Run Code Online (Sandbox Code Playgroud)
在对 的调用中bind()
,您使用的是App\Contracts\UploadService
(大写的“Contracts”),但错误消息指出App\contracts\UploadService
(小写的“contracts”)。纠正差异,它应该可以工作。
归档时间: |
|
查看次数: |
1388 次 |
最近记录: |