Как прервать хук обновления RedBean
Я должен сделать некоторые проверки в моей модели, а затем прервать, если что-то пошло не так. В упрощенном варианте это будет выглядеть так:
class Model extends RedBean_SimpleModel
{
public function update()
{
if(method_exists($this, 'validate') and ! $this->validate())
$this->abort(); // made-up method
}
}
Дело в том, что это abort
Метод (или аналог) не существует. Документы предлагают делать это с исключениями, но я хотел, чтобы процесс был более прозрачным. Я не смог поймать исключение внутри кода модели (чтобы избежать повторения, так как я уже знаю, что делать с ошибками).
Решение, которое я нашел здесь, состояло в том, чтобы открыть транзакцию и затем откатить на ошибки. Но я действительно не хочу таких накладных расходов. Какие-нибудь мысли?