假设我有一个为测试目的而创建的数据库,是否有一种方法可以将数据插入到列中,其中数字不同,例如在我的种子任务中:
10.times do
Post.create!(
Start_Date: ''
End_Date: ''
Number: "Random number from 1 to 10"
)
end
如果数字是随机数或1-10的增量,只要它不可重复就没关系。那里有宝石可以做到吗?
答案 0 :(得分:0)
只要您只使用序列1..10即可,您可以使用此代码
10.times do |i|
Post.create!(
Start_Date: ''
End_Date: ''
Number: i + 1
)
end
如果您需要随机数字:
(1..10).to_a.shuffle.each do |i|
Post.create!(
Start_Date: ''
End_Date: ''
Number: i
)
end
答案 1 :(得分:0)
给出1-10范围内的随机数
10.times do
Post.create!(
Start_Date: ''
End_Date: ''
Number: rand(1..10)
)
end
进行批量创建,以便只发出一个查询来创建它们。
posts = []
10.times do
posts << {Start_date: '', End_Date: '', Number: rand(1..10)}
end
Post.create(posts)