15
我只是得到了Rails控制檯的竅門,並發現它對於在我的類中快速測試方法很有用。我知道我可以改變我的模型,然後什麼原因「重新加載!」似乎並不總是在Rails控制檯中工作?
> reload!
抓住這些更新,但有時我會發現,它似乎沒有重裝我最新的代碼。 Rails是否在某處緩存代碼?
在一個非常簡單的僞例如,我可能對線路100錯誤代碼:
100: u = User.alll
,並在Rails的控制檯,當我運行這個方法,我可能會得到類似的錯誤:
NoMethodError: undefined method `alll' for User:Class ... on line 100
然後修改我的代碼,修復錯誤
100: u = User.all
然後重新裝入:
> reload!
,然後調用這個類有正確的代碼的方法時,它仍然會說
NoMethodError: undefined method `alll' for User:Class ... on line 100
明確時,誤差是固定的,有問題的線是連在線100了。有沒有辦法強制/硬重置「重新加載!」命令?
是的,這正是問題所在。您創建的實例不會「重新加載」。在重新加載並重新實例化之後,每次工作都很棒。謝謝@flambino – jbnunn