Это сработало для меня, хотя оно сильно отличается от вашей ошибки:
Следует также отметить, что способ вычисления вещей в Rails3 Spree немного отличается. Теперь объект содержит атрибуты item_total
, а не просто вызов object.length
.
В моём основном расширении:
def self.activate
Dir.glob(File.join(File.dirname(__FILE__), "../app/**/*_decorator*.rb")) do |c|
Rails.env.production? ? require(c) : load(c)
end
Calculator::PerWeight.register
end
В моем пользовательском калькуляторе:
def self.register
super
ShippingMethod.register_calculator(self)
end