2015-05-01 132 views
0

我已经升级,从4.2我laravel应用5,并试图注入我的依赖时,我发现了以下错误:传递给应用程序\ Classes下构造函数依赖注入laravel 5

<?php namespace App\Classes\Api\Zurmo; 

    use App\Classes\Api\Rest\ApiRestHelper; 

    class Connector implements ConnectorInterface { 

    public function __construct(ApiRestHelper $rest) 
    { 
    ... 

参数1 \ Api \ Zurmo \ Connector :: __ construct()必须是App \ Classes \ Api \ Rest \ ApiRestHelper的实例,没有给出

据我所见,它看起来不错,我在这里错过了什么?

+0

你如何使用这个类? – lukasgeiter

+0

上面的Connector类是从控制器调用的,如下所示: 使用App \ Classes \ Api \ Zurmo \ Connector作为Zurmo; –

+0

你把你的接口绑定到你的类实现上吗? – mcklayin

回答

2

如果你想Laravel自动解决你的依赖,你必须实例化通过Service Container类:

$zurmo = App::make('App\Classes\Api\Zurmo\Connector'); 

或者与app()功能:

$zurmo = app('App\Classes\Api\Zurmo\Connector'); 

注意,你有写出类别的全部路径


或者,您可以让Laravel在控制器中注入连接器本身。例如:

use App\Classes\Api\Zurmo\Connector as Zurmo; 

// ... 

public function __construct(Zurmo $zurmo){ 
    $this->zurmo = $zurmo; 
} 

public function someAction(){ 
    $this->zurmo->doMagic(); 
} 
相关问题