2014-04-07 4 views
0

Я хочу использовать другую модель «MyUser» из плагина «Myplug» для входа пользователя в CakeFp 2.4. Я пытался в MyplugAppController,Как изменить модель входа в Cakephp?

$this->Auth->authenticate = array(
      AuthComponent::ALL => array(
       'plugin' => 'Myplug', 
       'userModel' => 'MyUser', 
       'fields' => array(
        'username' => 'email', 
        'password' => 'password' 
       ), 
       'authorize' => array('Controller'), 
       'loginAction' => array(
        'plugin' => 'Myplug', 
        'controller' => 'my_users', 
        'action' => 'login' 
       ), 
       'loginRedirect' => array(
        'plugin' => 'Myplug', 
        'controller' => 'my_users', 
        'action' => 'index' 
       ), 
       'authError' => 'You don\'t have access here.', 
      ), 
      'Form' 
     ); 

и

public $components = array(
     'Auth' => array(
      'authenticate' => array(
       'Form' => array(
        'plugin' => 'Myplug', 
        'userModel' => 'MyUser', 
        'fields' => array(
         'username' => 'email', 
         'password' => 'password' 
        ) 
       ) 
      ), 
      'authorize' => array('Controller'), 
      'loginAction' => array(
       'plugin' => 'Myplug', 
       'controller' => 'my_users', 
       'action' => 'login' 
      ), 
      'loginRedirect' => array(
       'plugin' => 'Myplug', 
       'controller' => 'my_users', 
       'action' => 'index' 
      ), 
      'authError' => 'You don\'t have access here.', 
     ), 
    ); 

, но ни один из них работают. Он использует стандартную модель «Пользователь».

+0

поместить этот код в AppController, а затем попытаться –

ответ

1
'userModel' => 'MyUser', 

Это неправильно, если его плагин.

CakePHP использует эти обозначения везде плагинов:

PluginName.ClassName 

Это должно быть

'userModel' => 'YourPlugin.YourModel' 
+0

даже, что тоже не работает – Amb

Смежные вопросы