需要Factory Girl的Rails Console失败

时间:2018-09-11 14:37:47

标签: ruby-on-rails ruby factory-bot rails-console

我知道不赞成使用FactoryGirl,而推荐使用FactoryBot,但我们尚未更新代码,因此我们仍在使用FactoryGirl。无论如何,要求Rails控制台中的FactoryGirl应该可以工作,但这不是必须的。

该宝石正确包含在我的Gemfile中

group :test, :development do
   ...  
  gem 'factory_girl_rails', '~> 4.9.0'
   ...
end

它在我运行bundle

时出现
$ bundle | grep factory
Using factory_girl 4.9.0
Using factory_girl_rails 4.9.0

但是当我在控制台中要求它时,它会失败。

[1] pry(main)> require 'factory_girl_rails'
=> false
[3] pry(main)> require 'factory_girl'
=> false

我的Gemfile中的其他任何宝石似乎都没有发生这种情况。谁能帮我解决这个问题?

2 个答案:

答案 0 :(得分:5)

require返回false时,这并不意味着发生错误。这表示该功能已加载。

来自documentation of require

  

require(name)truefalse

     

加载给定的name,如果成功则返回true,如果已经加载了功能,则返回false

require无法加载功能时,它将引发LoadError

答案 1 :(得分:2)

它返回false,因为已经需要并加载了它。尝试

FactoryGirl

验证常量是否存在