对于我的生活,我无法让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上找不到任何体面的文档。
答案 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
。