如何在rails中使用active record
方法来忽略插入重复条目时的错误。
对于Rails>= 3,您可以这样使用:
begin
Device.create!(attributes)
rescue ActiveRecord::RecordNotUnique
# The device already exists.
end
使用create!(后跟bang char)。如果由于某种原因无法保存记录,则会引发异常,在这种情况下,我们的目标是挽救ActiveRecord::RecordNotUnique
。
我建议您把它放在一个具有描述性名称的模型方法上,如create_if_not_exists
。