【问题标题】:Ruby Ohm: do not raise unique index violation, just return falseRuby Ohm:不引发唯一索引违规,只返回 false
【发布时间】:2015-08-21 17:02:47
【问题描述】:

当我尝试保存唯一属性时,如果该属性不是唯一的,则会引发错误。有没有办法让它简单地返回 false 而不是引发错误?

这是我想要的代码类型,但如果域不是唯一的,则会引发错误,因此它永远不会到达else 子句:

domain = Domain.new(:domain => root_domain)
if domain.save
    return domain
else
    return Domain.with(:domain => root_domain)
end

【问题讨论】:

    标签: ruby-on-rails ruby ohm


    【解决方案1】:

    只需使用 ruby​​ 救援:

    begin
      domain.save
      domain
    rescue Ohm::UniqueIndexViolation
      return false
    end
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-04-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-01-23
      • 2023-03-16
      • 2018-01-10
      • 2015-11-03
      相关资源
      最近更新 更多