0
我想知道是否有任何方法可以通过ActiveRecord插入到Rails而无需通过保存点。所以,直接插入(并提交)。没有保存点的Rails保存(直接提交保存/创建)
问题是,如果有异常被抛出,我不希望保存/创建在同一个事务中也被回滚。我尝试了几个小时寻找它,但不确定如何。
我在开发中的数据库是SQLite,我相信在保存时应该有些闪闪发光的东西。
编辑:代码
log = config.model.where(md5: md5).first
if log
puts "I AM HERE 5A"
log.frequency += 1
log.save
else
puts "I AM HERE 5B"
config.model.transaction(requires_new: true) do
config.model.create!({
md5: md5,
level: level,
message: message,
backtrace: backtrace,
class_name: class_name,
method_name: options[:method],
line: options[:line],
file_name: options[:file],
parameters: (options[:parameters].blank? ? "" : options[:parameters].inspect),
description: options[:description]
})
end
end
你能告诉我们一些代码作为你想要的例子吗(如果你愿意的话,使用“magic_save_without_savepoint”作为你想存在的方法);) – 2014-09-01 05:43:35
真的没什么特别的,只是.create。但有时由于Timeout可能会抛出异常,并且我不希望我的数据被回滚。 – user3551335 2014-09-01 05:45:58
为了我们能够帮助你...我们需要真正看到它。您的口头描述在您的头脑中是清楚的......但不在我们的身上;) – 2014-09-01 05:49:00