0

これは私のパブリック追加関数ですが、少し間違いがあります。

ユーザー(彼の電子メールまたはユーザー名)が存在する場合、この関数はとにかくそれを保存します!

[user][email] で検索し、[user][username] で検索して、データベースに送信されるユーザー名と電子メールがユーザー名と電子メールを含む新しいデータであることを確認するにはどうすればよいですか。

 public function add() {
    if ($this->request->is('post')) {
       ////here it should be the query !
        $this->User->create();
        if ($this->User->save($this->request->data)) {
    $this->redirect(array('controller' => 'users', 'action' => 'login' ));
            $this->redirect(array('action' => 'index'));
        } else {
            $this->Session->setFlash(__('الموقع مش عارف يسيفك يا فقيع, حاول تاني'));
        }
    }
}
4

1 に答える 1

1

User モデルに検証を追加する

public $validate = array(
    'username' => array(
        'emailEmpty' => array(
            'rule' => 'notEmpty',
            'message' => 'Sorry, email cannot be empty',
            'last' => true,
        ),
        'email' => array(
            'rule' => array('email'),
            'message' => 'Must be a valid email',
            'last' => true,
        ),
        'emailExists' => array(
            'rule' => 'isUnique',
            'message' => 'Sorry, this email address is already in use',
        ),
    ),

);
于 2012-10-25T12:25:44.463 に答える