2011-12-19 3 views

ответ

2

ORM хранит массив с именем 'changed' для отслеживания изменений в столбце, которые вы можете проверить так.

public function save() 
{ 
    if (isset($this->changed['name'])) 
    { 
     // set the slug when the name changes -- 'my-post-name' 
    $this->slug = url::title($this->name); 
    } 
} 

Проверить ссылку - http://docs.kohanaphp.com/libraries/orm => изменен

+0

Спасибо, я понял, что если вы хотите проверить, что ЛЮБЫЕ поля изменены, вы можете просто использовать $ this -> _ saved; слишком – drupality

+0

Обновление для Kohana 3.x 'if ($ this-> changed ('name')) { ... }' –

1

Проблема полагаться на Измененное используется Save() метод сравнения, используемый в способе набора() выполняется == оператора!.

Таким образом, иногда, если значение одно и то же, но в одной строке есть строка, а в другом - целое число, ORM будет определять его как другое.

Смежные вопросы