Русскоязычный форум, посвященный фреймворку Kohana
http://forum.kohanaframework.su/

Почему не устанавливается свойство класса?
http://forum.kohanaframework.su/viewtopic.php?f=32&t=653
Страница 1 из 1

Автор:  nkl [ 23 май 2013, 11:30 ]
Заголовок сообщения:  Почему не устанавливается свойство класса?

У меня уже полная каша в голове!
Почему?????????
Да потому что ситуация уже выходит за рамки здравого смысла!
Вот код одного из методов класса Eav:
Код:
// Метод для редактирования справочника
   public function edit_reference($reference_id, $new_reference_name, $new_reference_description)
   {
      $editreference = ORM::factory('Reference')
         -> where('id', '=', $reference_id)
         -> reset(FALSE)
         -> find();
      /*   
      $editreference -> name = $new_reference_name;
      $editreference -> description = $new_reference_description;
      
      try
      {
         $editreference -> update();
         
      }
      catch(ORM_Validation_Exception $e)
      {
         $this->errors = $e->errors('validation');
         return FALSE;
      }*/
      return TRUE;
      $this -> result = 'test';
   }

В нем я закоментировал основную часть, что бы просто проверить, а работает ли он. И что б вы думали? Кохана выплевывает ошибку:
Цитата:
Undefined property: Model_Eav::$result


Хотя!!!
Код:
$this->errors = $e->errors('validation');

прекрасно создает Model_Eav::$errors

Если написать в самом начале класса Model_Eav
Код:
public $result;

То ошибка не возникает. Типа переменная такая есть, но в неё ничего не записано. Ничего не выводится на экран. Вопрос: почему????? Почему блеять?! Почему $this->errors = $e->errors('validation'); может создавать свойство Model_Eav::$errors, даже если туда просто записать $this->errors = 'Свойство еррорс!'; а $this -> result = 'test' нихера???

Автор:  WinterSilence [ 23 май 2013, 11:51 ]
Заголовок сообщения:  Re: Почему не устанавливается свойство класса?

потому что ты не учил мат часть и не знаешь отличие статичных атрибутов от нестатичных

Автор:  nkl [ 23 май 2013, 12:55 ]
Заголовок сообщения:  Re: Почему не устанавливается свойство класса?

Не вижу разницы между строкой:
Код:
$this->errors = $e->errors('validation');

и
Код:
$this->result = 'Test...';

В чем разница?

Автор:  nkl [ 23 май 2013, 14:00 ]
Заголовок сообщения:  Re: Почему не устанавливается свойство класса?

Все разобрался. Все что идет после return не выполняется!

Страница 1 из 1 Часовой пояс: UTC + 4 часа [ Летнее время ]
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/