我正在使用事务块并在该块内执行一些操作,有些事情应该忽略事务块,因为它与代码紧密结合,所以我无法将更新从事务块中移出。
我们如何跳过某些部分,让其余行为照常
Record.transaction do
check_for_errors required_columns
create_report
end
def check_for_errors
loop
...
begin
Methods
// want to skip this perticular db update from transaction block
job.update_column(total_number: loop index)
// as this is under transaction block no changes can be seen on ui
rescue => e
populate_error_message(e.message)
raise activeRecord::Rollback
end
end
end
任何想法在这种情况下可以做什么?