2015-11-06 73 views
-1

如何在類中定義一個存在於irb控制檯中的變量?從類內部定義一個變量在irb控制檯中

我要完成這樣的事情:

class MyClass 
    def self.define_var_in_irb 
     # of course this doesn't work because a is a local variable, 
     # not in the irb scope, and thats my question, how I can define 
     # a variable into the current irb session from inside a class. 

     a = 'hello' 

    end 
end 

>> MyClass.define_var_in_irb 
>> puts a 
# 'hello' 
+1

*我實際上正在修補一個rails模型* - 然後你的問題與irb無關,所以不要混淆這個問題。你認爲寫'r = self.find param' v。'r ='hello''可以澄清你的問題嗎? – 7stud

+2

這聽起來像[XY問題](http://meta.stackexchange.com/questions/66377/what-is-the-xy-problem)。你要通過這樣做來解決什麼問題? –

+1

鑑於實際提出的問題*「是否有可能創建一個在irb控制檯中定義變量的類?」*是**是**是您可以接受的答案嗎?如果不是,也許嘗試並提出一個不同的問題。 – engineersmnky

回答

1

如果你唯一的目標就是設置一些控制檯變量,那麼這是你的替代工具。

如果你使用pry(你應該,順便說一句),你可以使用.pryrc這個。在那裏創建你的局部變量。

r = Revision.find whatever 

此文件將在啓動時由Pry提取和評估。只要把它放在你的項目目錄(或主頁)。

IRB使用.irbrc文件,但不公開它的局部變量。但是,實例變量將起作用。另外,它不會加載本地文件(只有全局的,來自HOME)

相關問題