2012-11-15 50 views
0

我是新來的Rails(使用3.2.9),並獲得NoMethodError我不知道如何解決。任何人都可以幫忙嗎?NoMethodError在Rails應用程序

A NoMethodError occurred in trade_plans#update: 

undefined method `[]' for false:FalseClass 
app/models/trade_plan.rb:96:in `symbol_is_valid' 

這是trade_plan.rb線96:

if(data[:last_trade_price_only] == "N/A" || data[:last_trade_price_only].blank?) 

爲什麼會出現此錯誤,以及如何解決它的任何想法?

謝謝:)

+0

任何機會,'data'不是一個哈希,但實際上是'FALSE'(一個FalseClass的實例)? –

+0

如果您不確定'data'中有什麼,請在'logger.debug'之前的行中添加數據:#{data.inspect}「'然後在重新執行代碼後檢查您的'development.log'文件。 –

+0

@PhilipHallstrom你是對的。我已經接受了下面的答案反映了這一點。謝謝:-) – rassom

回答

2

這可能是因爲你的局部變量data具有價值false而不是被的Hash一個實例。

既然你想調用的方法[]對象false上,它提出了一個NoMethodError因爲false並不[]迴應。

+0

嘗試檢查== false並且工作正常。謝謝! :-) – rassom