2013年12月03日

CakePHP 2.3.10で認証チュートリアル

2005、2006年あたりの、CakePHPがうぶ声を上げたころにはいろいろ活動していた堂園です。
cakephp.jp を整備したり、マニュアルを書いたり、コミュニティをもりあげたりと色々していたなー。
今回、久しぶりに新規プロジェクトをCakeでつくりはじめました。

それほど最新のものではなくてよいと、2.3.10で作りはじめようかと思ったのですが、ちょっとはまったのでここに書いておきます。
CakePHP 2.X 用には、チュートリアル:

"シンプルな認証と承認のアプリケーション"
http://book.cakephp.org/2.0/ja/tutorials-and-examples/blog-auth-example/auth.html

がありますが、これがもう2.4.Xじゃないと動作しないコードになっています。2.3.10でこのチュートリアルをはじめたらはまりました。

チュートリアルでは、
頭で

App::uses('SimplePasswordHasher', 'Controller/Component/Auth');

beforeSave()内で

$passwordHasher = new SimplePasswordHasher();
$this->data[$this->alias]['password'] = $passwordHasher->hash($this->data[$this->alias]['password']);

となっていますが、2.3.10ではここが、

$this->data[$this->alias]['password'] = AuthComponent::password($this->data[$this->alias]['password']);

とする必要があるらしいです。

posted by SDozono at 15:07| 東京 ☀| Comment(0) | TrackBack(0) | CakePHP General | このブログの読者になる | 更新情報をチェックする