【问题标题】:Factory Girl / Rails: Generator to create a factory for existing model?Factory Girl / Rails:为现有模型创建工厂的生成器?
【发布时间】:2016-02-27 05:19:08
【问题描述】:

我在我的 Rails 项目中使用 rspec_railsfactory_girl_rails gems。所有模型都已创建。是否有可以运行的生成器来为现有模型创建工厂文件?

例如:我已经有一个Blog 模型。 RSpec 允许我通过简单地运行以下命令在spec/models/blog_spec.rb 生成模型规范文件:

rails generate rspec:model blog

是否有一个我可以在命令行中运行的生成器,它将为这个现有模型生成工厂文件,位于:spec/factories/blogs.rb

我在factory_girl_rails 文档中没有看到任何关于生成器的提及。

【问题讨论】:

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


    【解决方案1】:

    首先配置Factory Girl。

    config.generators do |g|
      g.fixture_replacement :factory_girl, dir: "spec/factories"
    end
    

    然后运行生成器。

    rails g factory_girl:model Blog name description total_visits:integer
    

    【讨论】:

    • FactoryGirl 变成了 FactoryBot。所以现在是rails g factory_bot:model Blog
    【解决方案2】:

    更新答案

    Factory Girl 已更名为 Factory Bot

    1. 确保将factory_bot_rails gem 添加到developmenttest 组中
    2. 然后运行rails g factory_bot:model Blog name description total_visits:integer

    例子:

    
    group :development, :test do
      # Call 'byebug' anywhere in the code to stop execution and get a debugger console
      gem 'byebug', platforms: [:mri, :mingw, :x64_mingw]
      gem 'pry-rails'
      gem 'rspec-rails', '~> 5.0.0'
      gem 'factory_bot_rails'
    end
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-10-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多