Русскоязычный форум, посвященный фреймворку Kohana

Все о фреймворке Kohana. Обсуждение уроков, документации.
Текущее время: 17 авг 2018, 17:59

Часовой пояс: UTC + 4 часа [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 9 ] 
Автор Сообщение
 Заголовок сообщения: Сообщения об ошибках валидации
СообщениеДобавлено: 17 июн 2012, 03:15 
Не в сети
Администратор
Аватара пользователя

Зарегистрирован: 12 фев 2012, 01:02
Сообщения: 462
В уроке "Сообщения об ошибках валидации" я начну рассказывать как выводить красивые сообщения об ошибках на примере нашей формы для отправки комментариев к статьям.
Урок находится здесь:
http://kohanaframework.su/advanced/validation_errors

_________________
kohanaframework.su - обучение фреймворку Kohana


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: kohana ORM_Validation_Exception
СообщениеДобавлено: 22 июн 2013, 07:01 
Не в сети
Новичок

Зарегистрирован: 21 июн 2013, 00:44
Сообщения: 15
Модель Sort
Код:
         
$model = ORM::factory('Test');
$model->data = '';      
try {
   $model->save();
} catch (ORM_Validation_Exception $e) {
   var_dump($e->errors());
}

Модель Test
Код:
class Model_Test extends ORM
{   
   ...
   ...
   ...

   public function rules()
   {
      return array(
         'data' => array(
            array('not_empty'), // ( ! empty() )
      );
   }

   ...
   ...
   ...

Результат
Код:
array(1) {
  ["data"]=>
  array(2) {
    [0]=>
    string(3) "not_empty"
    [1]=>
    array(1) {
      [0]=>
      string(33) ""
    }
  }
}

А вот если
Модель Sort
Код:
         
$model = ORM::factory('Test');
$model->data = '';      
try {
   $model->save();
} catch (ORM_Validation_Exception $e) {
   var_dump($e->errors('myerr')); // <---------
}

Тогда Результат
Код:
array(1) {
  ["data"]=>
  string(18) "data must not be empty"
}

А вот что написать вместо myerr чтобы выводить ошибки из application/messages/~myerr.php и какой путь должен быть у файла myerr.php не могу разобраться (
КО 3.3


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Сообщения об ошибках валидации
СообщениеДобавлено: 22 июн 2013, 18:23 
Не в сети
Бывалый
Аватара пользователя

Зарегистрирован: 02 апр 2013, 16:26
Сообщения: 474
Откуда: Сергиев Посад
эээ.. вообще-то var_dump($e->errors('myerr')); это и значит выводить ошибки из этого файла путь также как и в остальных случаях $e->errors('ru/myerr') или $e->errors('ru-myerr') (точно не помню, но скорее всего первое) это ввод из папки application/messages/ru/myerr.php

_________________
Майкл Джордан играет в баскетбол. Чарльз Мэнсон убивает людей. Я пишу код. У каждого свой талант.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Сообщения об ошибках валидации
СообщениеДобавлено: 23 июн 2013, 02:35 
Не в сети
Новичок

Зарегистрирован: 21 июн 2013, 00:44
Сообщения: 15
:?
Может у меня файл myerr неверный?
Код:
<?php defined('SYSPATH') OR die('No direct script access.');
return array(
   'data' => array(
      'not_empty' => 'свой текст',
   ),
);


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Сообщения об ошибках валидации
СообщениеДобавлено: 23 июн 2013, 02:56 
Не в сети
Бывалый
Аватара пользователя

Зарегистрирован: 02 апр 2013, 16:26
Сообщения: 474
Откуда: Сергиев Посад
system\messages\validation.php

_________________
Майкл Джордан играет в баскетбол. Чарльз Мэнсон убивает людей. Я пишу код. У каждого свой талант.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Сообщения об ошибках валидации
СообщениеДобавлено: 23 июн 2013, 04:30 
Не в сети
Новичок

Зарегистрирован: 21 июн 2013, 00:44
Сообщения: 15
:!: Бабах!!!
;) Только что нашел наипростейшее решение, какое может быть в данном случае
:arrow: Обращу внимание на то что это, судя по всему, особенность работы с ORM.
Цитата:
можно использовать и $user->validation()->errors('validation')
источник ORM в Kohana v3.1
и пару ссылок для желающих изучить подробно эту проблему
8-)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Сообщения об ошибках валидации
СообщениеДобавлено: 23 июн 2013, 13:59 
Не в сети
Бывалый
Аватара пользователя

Зарегистрирован: 02 апр 2013, 16:26
Сообщения: 474
Откуда: Сергиев Посад
-JSergRu- это те же яйца если ты еще не понял...

_________________
Майкл Джордан играет в баскетбол. Чарльз Мэнсон убивает людей. Я пишу код. У каждого свой талант.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Сообщения об ошибках валидации
СообщениеДобавлено: 24 июн 2013, 05:47 
Не в сети
Новичок

Зарегистрирован: 21 июн 2013, 00:44
Сообщения: 15
WinterSilence писал(а):
-JSergRu- это те же яйца если ты еще не понял...

почему сразу не предложил эти яйца?
почему-то те же яйца ($e->error('myerr')) в одном случае работают (не ORM) а в другом (ORM) не работают
:D доказано - это не те же яйца


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Сообщения об ошибках валидации
СообщениеДобавлено: 28 июн 2013, 20:01 
Не в сети
Администратор
Аватара пользователя

Зарегистрирован: 24 июл 2012, 18:00
Сообщения: 701
Откуда: Murom, Russia
Вывод один - нужно больше читать :)


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 9 ] 

Часовой пояс: UTC + 4 часа [ Летнее время ]


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Все о фреймворке Kohana  | 
Powered by phpBB® Forum Software © phpBB Group