让factory_girl在Rails3中工作

时间:2010-12-23 21:08:11

标签: rspec ruby-on-rails-3 factory-bot

对于我的生活,我无法让factory_girl在Rails3中工作。我创建了一个全新的应用程序。我的Gemfile:

gem "rspec"
gem "rspec-rails"
gem "factory_girl_rails"

application.rb中的生成器就像这样:

  config.generators do |g|
      g.test_framework :rspec, :fixture => true, :views => false, :fixture_replacement => :factory_girl
  end

然后,使用生成器创建一个新模型:

> rails g model Addon name:string

  invoke  active_record
  create    db/migrate/20101223205918_create_addons.rb
  create    app/models/addon.rb
  invoke    rspec
  create      spec/models/addon_spec.rb
   error      factory_girl [not found]

我错过了什么?当然我确实运行bundle install ...我试过环顾四周,但在factory_girl和rails3上找不到任何体面的文档。

3 个答案:

答案 0 :(得分:11)

您需要的是https://github.com/indirect/rails3-generators

  

Rails 3兼容的生成器,用于尚未拥有它们的宝石......

     

Factory Girl生成器已移至the factory_girl_rails gem ...

答案 1 :(得分:3)

这是今天Rails 3.2中的正确方法:

Rails.application.config.generators do |g|
  g.test_framework :rspec, fixture: true
  g.fixture_replacement :factory_girl, dir: 'spec/factories'
end

答案 2 :(得分:2)

有些用户可能正在使用factory_girl。确保您使用的是factory_girl_rails