как зарегистрироваться с разными полями в кохане

Класс Model_Auth_User в Kohana использует «имя пользователя», «электронная почта», «пароль» для создания нового пользователя, что, если я хочу, чтобы он принимал только «электронную почту», «пароль», а также модифицировал проверку для проверки «email_confirm» вместо « подтвердить пароль'


person Moustafa Mohamed    schedule 27.07.2013    source источник


Ответы (2)


Наконец, я это сделал. Все, что мне нужно сделать, это прокомментировать некоторые строки, которые добавляют правила проверки ввода пользователя, открыть C:\xampp\htdocs\kohana\modules\orm\classes\Model\Auth\User.php и строки комментариев. с 33:38 включительно следующим образом:

    public function rules()
{
    return array(
        //as we don't have a username we don't need to validate it!
        // 'username' => array(
        //  array('not_empty'),
        //  array('max_length', array(':value', 32)),
        //  array(array($this, 'unique'), array('username', ':value')),
        // ),
        'password' => array(
            array('not_empty'),
        ),
        'email' => array(
            array('not_empty'),
            array('email'),
            array(array($this, 'unique'), array('email', ':value')),
        ),
    );
}

Вы соблюдаете только правила проверки того, что вам нужно

person Moustafa Mohamed    schedule 28.07.2013

Избегайте изменения содержимого системной папки. В противном случае ваши изменения будут потеряны после следующего обновления. Более правильный подход — переопределить правила проверки.

В файле application/classes/Model/user.php:

<?php
  class Model_User extends Model_Auth_User
  {
    public function rules()
    {
      $rules = parent::rules();
      unset($rules['username']);
      return $rules;
    }
  }
?>
person Igor Shurshin    schedule 14.12.2013