cakephp自定义密码字段

cakephp自定义密码字段,php,cakephp-2.0,Php,Cakephp 2.0,我正在使用cakephp 2.3.9开发一个应用程序。它有一个用户表来保存用户凭据。如何在用户表中使用不同的字段,而不是密码字段来保存密码。您可以尝试以下方法: public $components = array( 'Auth' => array( 'loginAction' => array( ...... ), 'authError' => '...', 'authenticat

我正在使用cakephp 2.3.9开发一个应用程序。它有一个用户表来保存用户凭据。如何在
用户
表中使用不同的
字段
,而不是
密码
字段来保存密码。

您可以尝试以下方法:

public $components = array(
    'Auth' => array(
        'loginAction' => array(
           ......
        ),
        'authError' => '...',
        'authenticate' => array(
            'Form' => array(
                'fields' => 
                    array(
                       'password' => 'YOUR_CUSTOM_FIELD' // set custom field
                                                         // as password field
                    )
            )
        )
    )
);
AppController.php

并在表单中将
type=“password”
设置为该字段。e、 g

$this->Form->input('YOUR_CUSTOM_FIELD', array('type' => 'password'));

引用,要加密密码字段,您需要在控制器或模型中执行手动方法。e、 g.在控制器中,您可以执行以下操作:

$this->request->data['User']['YOUR_CUSTOM_FIELD'] = AuthComponent::password( $this->request->data['User']['YOUR_CUSTOM_FIELD']);
此外,在执行添加/编辑操作时,您还可以通过适当的检查来执行model
beforeSave()
功能


参考:


  • 非常感谢您的即时回复。我尝试过,它几乎可以工作,但我面临的另一个问题是我不想加密自定义密码字段。那我该怎么处理呢。。你知道吗?