【发布时间】:2015-12-09 02:31:11
【问题描述】:
全部。我目前正在使用 faker gem 在 Rails 中添加我的 seeds.rb 文件。我想知道:你如何让假数据遵循我想要的“规则”?
我正在构建一个篮球统计应用程序。我希望seeds 中的stat 创建300 组统计数据,其中我在stat 模型中设置的所有标准都是正确的。目前,300 组数据中只有 7-9 组最终被创建。有没有办法让seeds 忽略不工作的模型并制作 300 个可以工作的模型?
例如,我希望投篮命中率(我的数据库中的fga)大于或等于投篮命中率(fg)。 (我在模型中设置了这个“规则”。)当我在种子文件中执行此操作时:
# seeds.rb snippet
300.times do
stat = Stat.create(
fg: Faker::Number.between(0, 15),
fga: Faker::Number.between(0, 20)
# more stats below
)
如何确保 fga 每次都 >= fg?
我是否必须在seeds 中特别说明fg 不能大于fga?还是我在我的stat.rb 模型文件中设置一个方法,然后Faker 将遵循它? (我的模型还有其他一些规则,否则我只会设置不同的假数字。)
谢谢
【问题讨论】:
标签: ruby-on-rails seeding faker