2011-09-29 63 views
5

我打電話從Rails的控制檯Rails 3的輔助方法是這樣的:刷新助手從Rails的控制檯

>> helper.my_method(parameter) 
>> #=> some result 

但是,如果我改變助手方法的變化,當我調用相同的方法沒有反映再次。我不得不exit,爲了看到更改的輔助方法生效運行rails console

回答

4

首先,你錯題目你的問題。將來如果你更清楚你要找的是什麼,你很可能會很快得到答案。

其次,在紅寶石「函數」被稱爲「方法」。這不是什麼大問題,我們都知道你在說什麼,但適應社區使用的術語是很好的。

要回答你的問題,你只需要運行reload!類將被重新加載,包括您的助手。

+0

謝謝coreyward。 – utiq

7

其實,helper是memoizes的ApplicationController的幫手,當你調用reload!,至少在滑軌4.您可以解決此通過在控制檯呼叫ApplicationController.helpers.my_method(parameter)它不會重載實例化對象。您仍然需要使用reload!當您編輯的幫手,但它不像helper重裝。

0

過這個問題,現在來兩次放棄後,我想出如何重新加載傭工不退出控制檯,而不是通過ApplicationController.helpers.my_method(parameter)調用它們。

在致電reload!後,請再次包含您的幫手include MyHelper),並且它會包含您最近更改的幫助程序。