models/user.php
<?php
class User extends AppModel {
var $name = 'User';
var $validate = array(
'username' => array(
'alphanumeric' => array(
'rule' => 'alphaNumeric',
'message' => 'ユーザー名は半角英数字のみです。'
),
'isUnique' => array(
'rule' => 'isUnique',
'message' => 'このユーザ名はすでに使用されています。'
),
'between' => array(
'rule' => array('between', 4, 20),
'message' => 'ユーザー名は4文字以上20文字までです。'
)
)
);
}
?>
controllers/users_controller.php
<?php
class UsersController extends AppController{
var $name = 'Users';
var $scaffold;
var $helpers = array('Html','Ajax','Javascript');
function login() {
$this->pageTitle = 'ログイン';
}
function logout() {
$this->redirect($this->Auth->logout());
}
function add() {
$this->pageTitle = '初期ユーザの登録';
$this->User->set($this->data);
if ($this->User->validates()){
if (!empty($this->data)) {
$this->User->create();
$this->User->save($this->data['User']);
$this->redirect(array('action' => '/login'));
}
}
}
function beforeFilter() {
$this->Auth->allow('add','index','login');
}
}
?>
views/users/add.ctp
<?php
echo $form->create('User', array('action' => 'add'));
echo $form->input('username', array('label' => 'ユーザID'));
echo $form->input('password', array('label' => 'パスワード'));
echo $form->submit();
echo $form->end();
?>