Делаю свой небольшой проект на RoR + Sequel. Естественно возникает куча вопросов, косяков и прочего, Sequel всё таки не ActiveRecord. Но зато, получаю интересный опыт разных связок гемов. Описать решение одной проблемы как раз и решил.

И так, проект на RoR, ActiveRecord отключен, но зато подключен Sequel с помощью гема sequel-rails. В application.rb прописано следующее:

    config.sequel.after_connect = proc do
      Sequel::Model.plugin :timestamps, update_on_create: true
      Sequel::Model.plugin :validation_helpers
      Sequel::Model.plugin :association_dependencies
      Sequel::Model.plugin :devise
      Sequel::Model.db.extension :pagination
    end

Основные и привычные плагины для работы с рельсами. Возник вопрос, при стандартной кострукции:

    if @album.save
      redirect_to admin_vk_albums_path
    else
      render :new
    end

В случае не прохождения валидаций, возникает исключение, сервер отдает 400, и показывает страницу ошибки. Мне же хочется более стандартное поведение для рельсового приложения. Чтобы просто рендерилась другая вьюха. После не долгих поисков, дописываем в application.rb в блок, следующую строку:

      Sequel::Model.raise_on_save_failure = false

Радуемся, теперь если попытка сохранить запись срывается, срабатывает не исключение, а просто возвращается nil