1

私はSpree 2.1で作業しており、新しい支払いゲートウェイを追加しようとしていますが、このエラーはより一般的であるため、ここではSpree自体はそれほど重要ではありません.

( source ) クラスundefined method 'association_class' for nil:NilClassにいくつかのモジュールを追加した後、そのエラー ( ) が発生しました。Spree::PaymentMethod

spree/payment_method_decorator.rb

Spree::PaymentMethod.class_eval do
  include Spree::Core::CalculatedAdjustments
end

Spree::Core::CalculatedAdjustments ソース

Spree::Gateway ソース

残念ながら、現在Spree::PaymentMethod( source ) は少し壊れています。

n = Spree::PaymentMethod.first
=> #<Spree::Gateway::Bogus id: 1, (...)>
n.save
=> undefined method 'association_class' for nil:NilClass
n.calculator
=> undefined method 'association_class' for nil:NilClass

なぜこれが起こるのか、それを修正する方法を知っている人はいますか?

実際、私はすでに答えを持っています(数時間の闘争の後)が、誰かが適切な説明でより良い答えを出すかもしれません. おそらく答えは明らかですが、それは私のためではなく、SOに関連するものを見つけることができなかったので、同様のレベルのRoR知識を持つ他の誰かがそれにさらに数時間を費やす必要がないことを願っています.

4

1 に答える 1