CakePHP Auth コンポーネント活用してみる
2010年 04月 13日
今回はAuthコンポーネントlogin()を使ってusernameをindex()に渡す方法
25,26行目に注目。
$this->set();で格納してるのがview用、
変数に格納しているのがコントローラーの関数用
<?php
class UsersController extends Controller
{
var $name = 'Users';
var $uses = 'User';
var $components = array('Auth');
var $helpers = array('Html','Form','Javascript');
var $layoyt = 'default';
var $elements = array('header', 'footer');
function beforeFilter(){
parent::beforeFilter();
$this->Auth->allow('register');
$this->Auth->loginAction = '/users/login';
$this->Auth->userScope = array('status' => 0, 'valid' => 0);
$this->Auth->loginError = 'ユーザーIDまたは、パスワードが正しくありません。';
$this->Auth->authError = 'アクセス権限がありません。';
$this->set('userinfo', $this->Auth->user());
}
function index(){
$this->pageTitle = "ぷろじぇくと";
$this->set('userinfo', $this->Auth->user()); //view用
$userinfo = $this->Auth->user(); //コントローラー用
$data = $userinfo['User']['username'];
$cond = array('username' => $data);
$this->set('data', $this->User->find($cond));
}
function login(){
}
function logout(){
$this->redirect($this->Auth->logout());
}
}
微妙な違いに戸惑った・・・
(つд・)ウエーン
