小编DBA*_*DBA的帖子

如何重置factory_girl序列?

只要我有一个项目工厂

Factory.define :project do |p|
  p.sequence(:title)    { |n| "project #{n} title"                  }
  p.sequence(:subtitle) { |n| "project #{n} subtitle"               }
  p.sequence(:image)    { |n| "../images/content/projects/#{n}.jpg" }
  p.sequence(:date)     { |n| n.weeks.ago.to_date                   }
end
Run Code Online (Sandbox Code Playgroud)

而且我正在创建项目实例

Factory.build :project
Factory.build :project
Run Code Online (Sandbox Code Playgroud)

到这时,下次我执行Factory.build(:project)时,我将收到一个Project的实例,其标题设置为"project 3 title",依此类推.不奇怪.

现在说我想在这个范围内重置我的计数器.就像是:

Factory.build :project #=> Project 3
Factory.reset :project #=> project factory counter gets reseted
Factory.build :project #=> A new instance of project 1
Run Code Online (Sandbox Code Playgroud)

实现这一目标的最佳方法是什么?

我目前正在使用以下版本:

factory_girl(1.3.1)factory_girl_rails(1.0)

在此先感谢,最好的问候.

ruby ruby-on-rails factory-bot

27
推荐指数
5
解决办法
1万
查看次数

标签 统计

factory-bot ×1

ruby ×1

ruby-on-rails ×1