使用示例数据填充开发数据库的最佳方法是什么?
FactoryGirl似乎对测试有用,但不适合开发。 Populator未更新为Rails 3。
我应该在佣金任务中使用像Faker或Forgery这样的东西吗?
答案 0 :(得分:5)
我在rake任务中使用ffaker和populator gems在Rails 3项目中创建虚假数据。这是一个例子:
desc 'Create some fake tickets'
task :tickets => :environment do
Ticket.populate NUM_TICKETS do |t|
t.title = Faker::Lorem.sentence(word_count=15)
t.details = Faker::HipsterIpsum.paragraphs(sentence_count=3)
t.group_id = rand(6)+1 # random group_id [1..6]
t.status_id = 1
t.priority_id = rand(3)+1 # random priority_id [1..3]
t.contact_id = rand(NUM_CONTACTS)+1 # random contact_id [1..NUM_CONTACTS]
t.creator_id = rand(6)+2 # random created_by [2..7]
t.created_at = CREATION_PERIOD.sample
end
end
这里的完全佣金任务: https://github.com/leesmith/ticket_mule/blob/edge/lib/tasks/faker.rake
答案 1 :(得分:2)
答案 2 :(得分:-1)
在你的Gemfile中使用faker gem,bundle ..和...把它放在你的seeds.rb
中100.times do
Post.create({
title: Faker::Lorem.sentence(3),
body: Faker::Lorem.paragraph,
author_name: Faker::Name.name
})
end
$ rake db:seed