2011-08-03 12 views
5

HAMLを使用しているレールアプリ(3.0.9)を使用しているので、ローカル開発サーバーは正常に動作します。私はレールの-e生産を実行したときにでも、私のページには、このエラーを与える:Railsのプロダクション環境が周期的に破損する

NoMethodError: undefined method `[email protected]' for #<String:0x00000006331098> 

エラーは、それが(HAMLで書かれたビューから、)このライン上にあると言う:

%tr{:class=> cycle("even","odd")} 

私は」なぜこれが起こっているのか分からない。助けてください。

+0

奇妙なもの...私は、「薄い」のような真のプロダクションサーバ上で実行し、結果を見てみるでしょう。あなたはHerokuにプッシュし、それをかなり簡単に試すことができます。 – iwasrobbed

+0

私は最初にHerokuの問題を発見し、その後ローカルにテストを進めました。 –

+0

'%tr {:class =>"#{cycle( 'even'、 'odd')} "}'違いはありませんが、あなたのコードもそのまま破壊してはいけません。 – iwasrobbed

答えて

1

cycleメソッドは文字列連結を実行しますか?

最近、コードレビュー中にこのエラーが発生しました。

anObject.instance_method +string_var

instance_methodが可変string_varに存在する文字列の値が付加されることになっていた文字列を返した:

コードはこのようなものでした。これにコードを変更する

anObject.instance_method + string_var#はunary +方法がstring_varに呼び出されたスペースなし+

後のスペースに注意してください働いたが、何のunary +方法は、Stringクラスに定義されていません。したがって、例外。

unary +メソッドがdef [email protected]と定義されているため、例外メッセージに「メソッド[email protected]が見つかりません」と表示されます。

この要旨は、それが明らかに:https://gist.github.com/1145457

をとにかく、あなたのケースでは、この方法cycleはおそらく適切な間隔のないいくつかの文字列連結を行っている(それはあなたによって定義されたか、宝石の一部であるされているかどうかわかりません)または、例外バックトレースが正しいコード行を指していません。

これが役に立ちます。

関連する問題