Kohana 3: проверка обратного вызова
ПРИМЕЧАНИЕ. Этот вопрос относится только к Kohana 3.0. Kohana 3.1 и новее обрабатывают обратные вызовы проверки совершенно по-другому.
Я делаю проверку с обратным вызовом (ORM). Вот мой код:
class Model_Loja extends ORM {
// more code goes here!
protected $_callbacks = array(
'endereco' => array('endereco_unico')
);
public function endereco_unico(Validate $validate, $campo) {
$resultado = $this->where('endereco', '=', $this->endereco)->find_all();
if(count($resultado)) {
return false;
}
else {
return true;
}
}
// more code goes here!
Он возвращает истину или ложь (если есть значение, возвращает ложь), но как я могу отправить сообщение проверки, когда оно возвращает ложь?
1 ответ
Следующая функция проверки устанавливает ошибку для поля в случае сбоя проверки:
public function endereco_unico(Validate $validate, $campo) {
if(count($this->where('endereco', '=', $this->endereco)->find_all())) {
$validate->error($campo, 'endereco_unico');
}
}
(Перенесено из вопроса)