所以思路就是定义
def foo
puts "Works!"
end
并且直接从控制台而不加载我写的任何东西
irb(main):001:0>foo()
=> "Works!"
irb(main):002:0>
我在 Windows 上使用 1.9.3。我想使用它来获得一种重新加载 lib/* 的方法,这样我就不需要重新启动控制台。谢谢。
最佳答案
我想这就是你要问的......我在初始化程序中有以下代码:
if defined?(Rails::Console)
require "util/console_extensions"
include ConsoleExtensions
end
以及我希望在 lib/util/console_extensions.rb
module ConsoleExtensions
def foo
puts "Works!"
end
end
这会在加载 Rails 控制台时自动要求并包含 ConsoleExtension
模块,并使其中定义的方法可用,而无需手动加载任何内容。
关于ruby-on-rails - 在哪里定义可以直接从 Rails 控制台访问的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9375420/