【发布时间】:2010-10-15 15:59:42
【问题描述】:
Rails 提供了一个非常有用的控制台('script/console')。
我编写了一个 ruby 文件并使用 require foo.rb 在控制台中运行它。
第一次运行良好,但第二次和下一次require foo.rb 没有运行我的脚本(require 不会重新加载它)。
你有什么提示/技巧吗?
【问题讨论】:
标签: ruby-on-rails ruby command-line console
Rails 提供了一个非常有用的控制台('script/console')。
我编写了一个 ruby 文件并使用 require foo.rb 在控制台中运行它。
第一次运行良好,但第二次和下一次require foo.rb 没有运行我的脚本(require 不会重新加载它)。
你有什么提示/技巧吗?
【问题讨论】:
标签: ruby-on-rails ruby command-line console
require 用于加载扩展 - 因此代码将执行一次,以使扩展出现在您的环境中,但随后的 requires 不会做任何事情,因为该作业已经完成。
load,另一方面,每次都加载并执行代码。
如前所述,如果您只想运行脚本并且需要 Rails 环境,请考虑使用 script/runner
【讨论】: