ruby-on-rails - 如何检测我的代码是否在 Rails 3 的控制台中运行?

标签 ruby-on-rails console ruby-on-rails-3

我在初始化程序中有这段代码:

if $0 == 'irb'
  # ...
end

它在 Rails 2.3 中工作得很好,但在 Rails 3 中,$0 的值是“script/rails”,无论它是用 Rails c 还是rails s 启动的。 ARGV 是一个空数组。如何检测应用程序是否已使用“rails c”或“rails console”启动?

最佳答案

你也许可以试试这个

if defined?(Rails::Console)
  # in Rails Console
else
  # Not in Rails Console
end

关于ruby-on-rails - 如何检测我的代码是否在 Rails 3 的控制台中运行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4603704/

相关文章:

console - 在 Xcode 4 中输入到控制台

c# - 如何更改任务管理器中显示的控制台应用程序名称?

ruby-on-rails - 如何覆盖lib目录中的rails引擎文件?

ruby-on-rails - Rails 应用程序对本地网络不可见

mysql - Rails bitnami,MYSQL无法启动

ruby-on-rails - Rails 错误消息和重定向

c# - 如何使用 SetConsoleHandler() 来阻止退出调用

mysql - 无法从 "Lost connection to MySQL server"错误中解救

ruby-on-rails - 如何检索网站图标?

ruby-on-rails-3 - Rails select_tag - 设置 include_blank 并选择默认值