1

对于命令require rails , irb首先给出true,然后总是给出false

rails 控制台总是给出错误的。

这是怎么回事?

请看下面的cmd-

~/Workspaces/eclipse/image_cropper_ws/image_cropper$ irb

1.9.2-p180 :001 > require 'rails'
=> true 
1.9.2-p180 :002 > require 'rails'
=> false 
1.9.2-p180 :003 > exit



~/Workspaces/eclipse/image_cropper_ws/image_cropper$ rails console
Loading development environment (Rails 3.2.8)

1.9.2-p180 :001 > require 'rails'
=> false 
1.9.2-p180 :002 > require 'rails'
=> false 
4

2 回答 2

2

false当您尝试要求的内容已经加载时, require 返回 - 第一次,require 'rails'它没有加载,并且 require 返回 true。
第二次require 'rails',它已经加载并且 require 返回 false。

Rails 总是加载到 rails 控制台中。

于 2012-12-04T12:34:45.013 回答
1

检查文档的require,它指出

加载给定的名称,如果成功则返回 true,如果已加载功能则返回 false。

因此,第一次调用requireirb 时,它会加载并返回 true。第二次它已经加载,所以它返回 false。

当你调用rails c它时,它会在你的 Rails 环境中加载 irb,所以它必须已经需要rails

于 2012-12-04T12:34:23.477 回答