标签: ruby-on-rails ruby command-line console
Rails提供了一个非常有用的控制台('script / console')。
我编写了一个ruby文件,并使用require foo.rb在控制台中运行它。
require foo.rb
第一次工作正常,但第二次和下一次require foo.rb没有运行我的脚本(require没有重新加载它。)
require
你有任何提示/技巧吗?
答案 0 :(得分:17)
require 用于加载扩展 - 因此代码将执行一次,以使扩展在您的环境中出现,但后续要求将不会执行任何操作,因为该作业已经完成。
加载每次都会加载并执行代码。
如前所述,如果您只想运行脚本并且需要Rails环境,那么请考虑使用script / runner
答案 1 :(得分:2)
您应该尝试在脚本中加载rails环境或使用rake。还要考虑使用script / runner。
Here是一个在脚本中使用rails环境的旧的,可能过时的示例。更新且详细的版本here。
A stack overflow answer