当我尝试保存唯一属性时,如果属性不唯一,则会引发错误。有没有办法让它只是返回false而不是引发错误?
这是我想要的代码类型,但如果域不是唯一的,则会引发错误,因此它永远不会到达else
子句:
domain = Domain.new(:domain => root_domain)
if domain.save
return domain
else
return Domain.with(:domain => root_domain)
end
答案 0 :(得分:0)
只需使用红宝石救援:
begin
domain.save
domain
rescue Ohm::UniqueIndexViolation
return false
end