私のAppControllerには、このセットアップがあります
public $components = array(
'Acl',
'Auth' => array(
'authorize' => array(
'Actions' => array('actionPath' => 'controllers')
)
),
'Session',
'DebugKit.Toolbar'
);
私の User モデルには「username」フィールドがなく、「email」があるため、$components 構成を次のように変更しました。
public $components = array(
'Acl',
'Auth' => array(
'authorize' => array(
'Actions' => array('actionPath' => 'controllers')
),
'authenticate' => array(
'Form' => array(
'fields' => array(
'username' => 'email', 'password' => 'password'
)
)
)
),
'Session',
'DebugKit.Toolbar'
);
このようにして、「モデルに「ユーザー名」フィールドがありません」というエラーは表示されませんが、ログインは拒否されます。だから私は以前の構成に戻し、テーブルを変更しました
ALTER TABLE users CHANGE COLUMN username email VARCHAR(45) NOT NULL UNIQUE;
そして、それはうまくいきました..では、以前の構成の何が問題になっていますか?