Hai我是cakephp的新手。我使用CakePhp设计了登录页面和注册页面。我已经在users表中添加了2到3个用户信息。现在我想用注册用户登录电子邮件和密码。我怎么能使用身份验证登录电子邮件而不是用户名?我正在使用cakephp版本2.4.2。请你帮我吗?先谢谢。
答案 0 :(得分:0)
尝试使用以下命令进行配置:
public $components = array(
'Auth' => array(
'authenticate' => array(
'Form' => array(
'fields' => array('username' => 'email')
)
)
)
);
另见食谱中的Configuring Authentication handlers。
所有致谢:dhofstet
答案 1 :(得分:0)
Auth可能是CakePHP首次推出时最令人困惑的部分之一, 您需要将'username'=>'username'更改为'username'=>'email'
以下是我当前某个项目的摘录,我们使用电子邮件字段而不是用户名。
我也会在CakePHP 2.0 Auth上建议这个视频: http://www.youtube.com/watch?v=zvwQGZ1BxdM
从CakePHP开始,视频教程帮了我很多忙。
public $components = array(
'Auth' => array(
'loginAction' => array(
'controller' => 'user',
'action' => 'signin'
),
'loginRedirect' => '/',
'authError' => 'Did you really think you are allowed to see that?',
'userModel' => 'User',
'authenticate'=>array(
'Form'=>array(
'fields'=>array(
'username'=>'email',
'password'=>'password'
)
)
)
)
);