Kohana Валидация при регистрации нового пользователя проходит некорректно

Lobezki

Новичок
Регистрирую нового пользователя (на данном этапе она представляет собой только ввод имейла) и после нажатия кнопки "зарегистрировать" и в случае успешной регистрации ОРМ выдаёт ошибку, хотя должен писать "регистрация прошла успешно". И на удивление в базе данных в майадмине юзер региться как надо. Такая шибка стала выскакивать после того, как я написал так называемый кол бэк, кот по умолчанию насколько я понял в кохане нет. Создал свой контроллер связывающий ОРМ и май админ (простите если пока не совсем правильно излагаю мысли, только начинаю набираться умных слов) и назвал его не как тсандартный User, а Myuser, ч.б. не происходило ошибок.

Вот скрин ошибки.

[URL=http://mypic.lt/di/KQFB/.png][/URL]

Вот код модели Register:
PHP:
<?php defined('SYSPATH') or die('No direct script access.');

class Model_Register
{

   public function reg($email, $regcodevalue, $role)
   {
     $regcodevalue = new Model_Regcode();
     $myuser = new Model_Myuser();
  
     //Создаём пользователя
     $myuser->username = $email;
     $myuser->email = $email;
     $myuser->password = "12345";
    
     try
     {
       $myuser->save();
      
       // Узнаём id созданного пользователя
       $usertemp = ORM::factory('user', array('username'=>$email));
       $adduserid = $usertemp->id;
    
       // Сохранение роли
       $addrole = new Model_Addrole();
       $addrole->user_id = $adduserid;
       $addrole->role_id = $role;
       $addrole->save();

       return TRUE;
     }
     catch(ORM_Validation_Exception $e)
     {
       $this->errors = $e->errors('validation');
       return FALSE;
     }
    
   }
}
Вот код модели Myuser:
PHP:
<?php defined('SYSPATH') or die('No direct script access.');

class Model_Myuser extends ORM
{

   protected $_table_name = 'users';

   public function rules()
   {
     return array(
       'username' => array(
       array('not_empty'),
       array('email'),
       array(array($this, 'username_unique')),
       ),
     );
   }
    
   public function username_unique($username)
   {
     $usertemp = ORM::factory('myuser', array('username'=>$username));
     if($usertemp->loaded())
     {
       return FALSE;
     }
     else
     {
       return TRUE;
     }
   }
}
Вот код контроллера Myuser:
PHP:
<?
return array(
   'username' => array(
     'not_empty' => 'Вы не ввели адрес эл. почты.',
     'email' => 'Вы допустили ошибку при вводе адреса эл. почты.',
     'username_unique' => 'Введённый адрес эл. почты используется другим пользователем.',
   ),
);
 

Здыхлик

Kohaner
Команда форума
Вам php явно пишет, что не так. Когда будут конкретные вопросы - тогда спрашивайте.
 

Lobezki

Новичок
Здыхлик, да еще раз сосредоточился и нашел ошибку) Ошибка была в моделе Register в строчке $usertemp = ORM::factory('user', array('username'=>$email)); Надо было написать вместо user - myuser.
 

Вурдалак

Продвинутый новичок
MVC во всей красе, модели, контроллеры. Вот это я понимаю, молодец!
 

Lobezki

Новичок
Вурдалак, если вы мне "молодец!", то здесь я вас разочарую. Делаю по видео-уроку. Поэтому можно сказать, что автор не я. Я только учусь.

И вообще возникла новая ошибка. В случае ошибок при регистрации, то кохана не выводит сообщения из моего контроллера Myuser, а из своего опять-таки на английском. Понять не могу почему не подхватывает мой. Ведь все имена указывают именно на него. Я так понимаю это связано с настройками стандартного validation.php и методом $e, которого нет в новой версии коханы в validation.php?
 
Последнее редактирование:

Вурдалак

Продвинутый новичок
У тебя непонимание значений слов «контроллер» и «модель». Почитай, погугли, потом употребляй эти слова.
 

Вурдалак

Продвинутый новичок
Конечно, лучше оставаться в неведении и продолжать называть i18n-файл контроллером, а контроллер — моделью.
 
Сверху