保存期间“with_transaction_returning_status”出错

时间:2013-10-14 06:23:18

标签: activerecord ruby-on-rails-3.2

保存期间!一个对象,我得到一个奇怪的" ArgumentError - 错误的参数数量(1表示0)"错误。调试导致文件Ruby1.9.3 / lib / ruby​​ / gems / 1.9.1 / gems / activerecord-3.2.14 / lib / active_record / transactions.rb中的方法with_transaction_returning_status, self.class.transaction原来是零,这看起来很奇怪。单步执行self.class.transaction行会导致引发错误。任何想法为什么会出错?

def with_transaction_returning_status
  status = nil
  self.class.transaction do
    add_to_transaction
    status = yield
    raise ActiveRecord::Rollback unless status
  end
  status
end

1 个答案:

答案 0 :(得分:0)

非问题:通过覆盖BigDecimal的to_s方法得到','作为输入字段中的分隔符似乎是一个好主意,结果变成了一场噩梦,导致上述...删除了to_s覆盖,问题就消失了......