CakePHP имеет любой необходимый, если у меня уже есть находка - PullRequest
0 голосов
/ 03 ноября 2011

У меня есть следующая функция, которая находит подходящего пользователя и меняет его статус на активный:

public function activate ($username = null, $key = null)
{
    if ($username == null || $key == null)
    {
        $this->redirect(array('action' => 'login'));
    }

    if ($this->User->hasAny(array(
            'User.username' => $username,
            'User.activation_key' => $key,
            'User.status' => 0,
        )))
    {
        $user = $this->User->findByUsername($username);
        $this->User->id = $user['User']['id'];
        $this->User->saveField('status', 1);
        $this->User->saveField('activation_key', md5(uniqid()));
        $this->Session->setFlash(__('Account activated successfully.', true), 'default', array('class' => 'success'));
    }
    else
    {
        $this->Session->setFlash(__('An error occurred.', true), 'default', array('class' => 'error'));
    }

    $this->redirect(array('action' => 'login'));
}

Но это if statement: if ($this->User->hasAny(array( 'User.username' => $username, 'User.activation_key' => $key, 'User.status' => 0, ))) даже необходимо, так как мне все еще нужно найти пользователя по его адресу электронной почты (который, очевидно, уникален)

Ответы [ 2 ]

1 голос
/ 03 ноября 2011

очевидно нет.

И я впервые знаю, что hasAny () в торте:))

0 голосов
/ 22 декабря 2014

Это не обязательно. Когда вам нужно выполнить некоторые дополнительные условия, вы можете поместить их в условие поиска.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...