如何使用Rails Faker gem生成连贯的数据?

时间:2014-02-13 19:59:43

标签: ruby-on-rails ruby faker

为了用假数据填充我的Rails应用程序,我经常这样做:

person = Person.create(
  :first_name   => Faker::Name.first_name,
  :last_name    => Faker::Name.last_name,
  :email        => Faker::Internet.email
)

这可能会产生person,如:

  

名字:Olivia

     

姓氏:Kubera

     

电子邮件:milan_nieklauson@bachmannjacob.net

有没有办法生成更连贯的假数据,如:

  

名字:Olivia

     

姓氏:Kubera

     

电子邮件:olivia_kubera@aol.com

或者我必须拿出自己的东西来实现这个目标吗?

1 个答案:

答案 0 :(得分:21)

您可以将名称传递给Faker::Internet.email,以便为该人生成虚假的电子邮件地址。你需要做更多的工作但不要太多:

first_name = Faker::Name.first_name
last_name = Faker::Name.last_name
person = Person.create(
  :first_name => first_name
  :last_name => last_name
  :email => Faker::Internet.email(first_name + "." + last_name)
)