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');
    }
}

(Перенесено из вопроса)

Другие вопросы по тегам