さて、サクサク進めましょう。

ログインを実装する

管理画面用の AppController.php に認証コンポーネントを設定しました。その結果 /admin/ アクセスしようとすると /admin/admin/login に遷移するようになりましたので、早速ログインを実装してきます。

こちらもチュートリアルの記事が参考になります。AdminController.php にloginメソッドを追加します。

public function login(){
    if ($this->request->is('post')) {
        $admin = $this->Auth->identify();
        if ($admin) {
            $this->Auth->setUser($admin);
            return $this->redirect($this->Auth->redirectUrl());
         }
         $this->Flash->error('管理者IDかパスワードが不正です。');
    }
}

loginテンプレートを作成します。Template/Admin/Admin/login.ctp を作成して、こんな感じでフォームを作ります。

<h1>管理者ログイン</h1>
<?= $this->Form->create() ?>
<?= $this->Form->control('admin_cd') ?>
<?= $this->Form->control('password') ?>
<?= $this->Form->button('Login') ?>
<?= $this->Form->end() ?>

ログインした後のことを考えて、 home メソッドとテンプレートも作りましょう。

AdminController.phpに以下を追加します。

public function home(){

}

Template/Admin/Admin/home.ctp を作ります。中身は適当に。

ログアウトも必要ですね。logoutメソッドも作りましょう。AdminController.phpに以下を追加します。

public function logout() {
$this->Flash->success('ログアウトしました');
return $this->redirect($this->Auth->logout());
}

1,000文字超えてしまったので、続きはまた次回。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です