Я использую CakePHP 2.6.
Я следовал инструкциям из кулинарной книги cakephp и обнаружил, что существует два способа настройки компонента Auth в appcontroller.
Первый из них:
public $components = array(
'Acl',
'Auth' => array('authorize' => array('Actions' => array('actionPath' => 'controllers'))),
'Session'
);
И еще один это:
public $components = array(
'Acl',
'Auth' => array('authorize' => 'Controller'),
'Session'
);
Итак, мой вопрос: каковы различия между ними и почему мы должны использовать санкционировать параметр?
Попробуй это
public $components = array(
'Cookie',
'Email',
'RequestHandler',
'Session' ,
'Auth'=>array(
'loginAction' => '/login',
'loginRedirect'=> '/login', //~ where to redirect if user not login
'logoutRedirect'=> '/logout',
'authError'=>"You can't access this page",
'authenticate' => array('Form',array('fields' => array('username' => 'email'),'userModel' => 'User')), //~ user email as username if login with email else use username in case of log
'authorize'=>array('Controller')
) ,
'RequestHandler',
'Upload'
);
поместите эту функцию в контроллер приложения
public function isAuthorized($user) {
if($user)
return true;
else
return false;
}
Вы можете войти, используя приведенный ниже код в функции входа
$this->Auth->login();
Других решений пока нет …