2012-05-08 16 views
0

私は私のRails 3.2.3のアプリをテストするために熊手を実行しようとしていますし、私はこの奇妙なエラーを取得しています初期化されていない定数はActiveRecord ::ベース:: StrictgitSanitizer

gems/1.9.1/gems/activemodel-3.2.3/lib/active_model/mass_assignment_security.rb:206:in `const_get': uninitialized constant ActiveRecord::Base::StrictgitSanitizer (NameError) 

マイスペックファイルが完全に空になって、私は港テストコードを書き始めましたが、空の自動生成されたスペックファイルです。

この問題のデバッグ方法に関するアイデアが必要です。

答えて

2

あなたが誤ってのconfig/environment.rbにconfig.active_record.mass_assignment_sanitizer = :strictに単語gitを貼り付けたのだろうか。どういうわけか、ActiveModelはLoggerまたはStrictのような名前を使用する必要がある名前の一部としてStrictgitを使用しています。

私はちょうど宝石/エラーが発生し1.9.1 /宝石/ activemodel-3.2.3/LIB/active_model/mass_assignment_security.rb、線206を見ました。ライン206を取り囲む方法がされています。私の知る限り見るように、mass_assignment_sanitizer=(value)のみレール自体に:logger:strictの値で呼び出さ

def mass_assignment_sanitizer=(value) 
    self._mass_assignment_sanitizer = if value.is_a?(Symbol) 
    const_get(:"#{value.to_s.camelize}Sanitizer").new(self) 
    else 
    value 
    end 
end 

+0

あなたは正しいです!どうもありがとう。私は何が厳しくなるか疑問に思っていた。 –

関連する問題