регистрация kohana возвращает ошибку - PullRequest
1 голос
/ 12 января 2012

У меня есть работающий скрипт регистрации, единственная проблема в том, что я не знаю, как проверить, существует ли уже имя пользователя, потому что теперь, если электронная почта или имя пользователя уже существует, возвращает мне эту фатальную ошибку: ORM_Validation_Exception [ 0 ]: Failed to validate array ~ MODPATH/orm/classes/kohana/orm.php [ 1174 ]

И здесьмой сценарий:

$validate = Validation::factory($values)
        ->rule('name', 'not_empty')
        ->rule('password', 'matches', array(':validation', 'password', 'repeat-password'))
        ->rule('password', 'not_empty')
        ->rule('email', 'email')->rule('email', 'not_empty')
if(!$validate->check()){
    $errors = $validate->errors('registration', true);
    foreach($errors as $value){
        echo $value . "<br />";
    }
    return;
}
$model = ORM::factory('user');
$model->values(array(
    'username'          => $values['name'],
    'email'             => $values['email'],
    'password'          => $values['password'],
    'password_confirm'  => $values['repeat-password'],
));

Я использую версию 3.2.

1 Ответ

1 голос
/ 07 апреля 2012

Чтобы узнать, существует ли запись ...

$model = ORM::factory('user', $values['name']);

if ( !$model->is_loaded() ) {
    // do registration
}

При этом будет предпринята попытка поиска модели пользователя с этим именем пользователя (если для нее задан первичный ключ).

...