2016-04-13 14 views
0

Merhaba Denetleyicilere bağımlılıklar enjekte etmeye çalışırken hatalar yaşıyorum.ZF2 denetleyicilerinize bağımlılıkların enjekte edilmesiyle ilgili hata

Warning: Missing argument 1 for User\Controller\LoginController::__construct(), called in /var/www/html/engsvc_dev/vendor/zendframework/zendframework/library/Zend/ServiceManager/AbstractPluginManager.php on line 170 and defined in /var/www/html/engsvc_dev/module/User/src/User/Controller/LoginController.php on line 23

Module.php

public function getControllerConfig(){ 
    return array(
     'factories' => array(
      'Login' => function ($sm) { 
       $locator = $sm->getServiceLocator(); 
       $controller = new LoginController($locator->get("Config")); 
       return $controller; 
      }, 
     ), 
    ); 
} 

Kontrol

class LoginController extends AbstractActionController{ 

protected $globalConfig; 

protected $UserModuleSetup; 

public function __construct($config){ 

} 

module.config.php

"invokables" => array(
    "User" => "User\Controller\LoginController", 
    "Login" => "User\Controller\LoginController" 
), 
+0

. Module.config.php' – marcosh

+0

’daki 'Login' satırını kaldırmayı deneyin, daha önce denedim. Bu hatayla sonuçlandı Önemli Hata: Class 'Kullanıcı \ LoginController', 39 numaralı satırdaki /var/www/html/engsvc_dev/module/User/Module.php dosyasında bulunamadı –

+1

Belki de yapıcı olmadan "Kullanıcı" aramanız kurucuya iletildiğinden – chaoss88

cevap

0

Module.php

public function getControllerConfig(){ 
    return array(
     'factories' => array(
      'Login' => function ($sm) { 
       $locator = $sm->getServiceLocator(); 
       $controller = new User\Controller\LoginController($locator->get("Config")); 
       return $controller; 
      }, 
     ), 
    ); 
} 

Kontrolör

class LoginController extends AbstractActionController{ 

protected $globalConfig; 

protected $UserModuleSetup; 

public function __construct($config){ 

} 

module.config.php ben module.config.php` `daki` Login` tanım Module.php` `in tanımını geçersiz olduğunu tahmin

"invokables" => array(
    "User" => "User\Controller\LoginController", 
),