Во время сохранения! объекта, я получаю странное «ArgumentError - неправильное количество аргументов (1 для 0)». Отладка приводит к методу with_transaction_returning_status в файле Ruby1.9.3/lib/ruby / gems/1.9.1/gems/activerecord-3.2.14/lib/active_record/transaction.rb, , где self.class.transaction оказывается нулевым , что кажется странным. Переход по строке self.class.transaction вызывает повышение ошибки. Любые идеи, почему это может пойти не так?Ошибка в «with_transaction_returning_status» во время сохранения
def with_transaction_returning_status
status = nil
self.class.transaction do
add_to_transaction
status = yield
raise ActiveRecord::Rollback unless status
end
status
end
существует так много возможных причин ... было бы неплохо разместить некоторый контекст (код, который вы выполняете), и сообщение об ошибке (полная строка stacktrace включая строку -чисел). – phoet
@phoet: больше не нужно искать решение. Казалось бы, хорошая идея получить «,» как разделитель в поле ввода, переопределив метод to_s для BigDecimal, превратившийся в кошмар, приводя к вышесказанному ... Убрали переопределение to_s, и проблема исчезла. .. – Danny
вы должны ответить на свой вопрос, чтобы другим не приходилось смотреть на него больше – phoet