Есть ли в ORM Kohana средства для регулирования реакции на ошибку добавления и обновления?
В фреймворке kohana есть orm, в классах orm есть метод save() - сохранить, который выполняет либо insert запрос, либо update запрос в базу данных в зависимости создаем мы новую запись или редактируем имеющуюся.
Для контроля в базу данных добавил ключи unique. Из за этого при вставке записей с неуникальными полями с помощью kohana orm возникает ошибка и выполнение прекращается.
Как сделать так чтобы выполнение не прекращалось, я вижу два пути которые мне не нравятся:
1. Использовать прямые SQL запросы к базе данных (не использовать orm)
2. Оборачивать каждый save() в конструкцию try { } catch
Еще можно перед каждым save() проверять на существование в базе записи с подобными полями, но это на мой взгляд чересчур ресурсоемко.
Вопрос вот в чем: Есть ли в ORM Kohana средства для регулирования реакции на ошибку добавления и обновления? Т.е. можно ли в orm прикрутить ignore?
В принципе, вне зависимости от фреймворка это нормальная ситуация, поскольку не mysql единым живы разработчики (insert ignore - не является стандартом). Так что следует использовать try-catch