2013-03-02 44 views
3

我試圖讓money-rails寶石工作,我遇到問題...>。 <Rails錢軌寶石獲取未定義的貨幣化方法

這裏的產品,我對相應的列:

class ItemAttrVal < ActiveRecord::Base 
    belongs_to :attr_name 
    belongs_to :registry_item 

    monetize :price_val_cents, :allow_nil => true 
    #snip 
end 

我已經運行遷移,以及相應的列在那裏(price_val_centsprice_val_currency)。

我已經在我的Gemfile中獲得了寶石,並且成功運行了bundle install

當我做ItemAttrVal.new,我得到這個作爲錯誤消息的第一行:

NoMethodError: undefined method `monetize' for #<Class:0x007fb489c759d0> 

可能有人幫助指出對我有什麼簡單的事情,我已經錯過了? 我沒有將它包括在require之內(除了我的Gemfile),但我並不認爲這是需要的...

謝謝!

+7

自從添加gem後,您是否重新啓動了控制檯或服務器? – 2013-03-02 15:35:56

+1

好的...這真的很尷尬...重新啓動,它的工作!我認爲在控制檯上做一個'reload!'就足以讓控制檯繼續運行了嗎? – 2013-03-02 15:37:54

+0

我不知道如何重新加載!工程,但這種有意義的,因爲它不會重新加載整個環境。否則,它會很慢,但事實並非如此。由於在環境加載時加載了寶石,請重新加載!不需要添加任何新的寶石。 – 2013-03-02 15:53:26

回答

0

根據Peter Brown的評論,無論何時添加新的gem或添加或修改環境變量時,都應重新啓動控制檯。只需退出並重新啓動,也推薦重新啓動服務器。

即使重新啓動後,問題仍然存在。在這種情況下,試着殺死彈簧服務器,這樣你就可以開始全新的了。