如何将此:project_pages_id => 1
值更改为自动递增?
user.projects.create!(:title => Faker::Lorem.sentence(1), :project_pages_id => 1)
如何将此:project_pages_id => 1
值更改为自动递增?
user.projects.create!(:title => Faker::Lorem.sentence(1), :project_pages_id => 1)
10.times do |n|
user.projects.create!(:title => Faker::Lorem.sentence(1), :project_pages_id => n
end
该 project_pages_id 是否打算成为外键?如果是这样,您为什么要自动递增它以使其具有 nil 关联?
看起来您正在尝试创建种子数据。一个很好的方法是使用 Factory Girl:
https://github.com/thoughtbot/factory_girl
除其他外,它具有“序列”的概念,可以解决您最初的问题:
# Defines a new sequence
Factory.sequence :email do |n|
"person#{n}@example.com"
end
Factory.next :email
# => "person1@example.com"
Factory.next :email
# => "person2@example.com"
您需要遍历一个数组,例如:
a = (1..10).to_a #or however many ID's you want.
a.each do {|d| user.projects.create!(:title => Faker::Lorem.sentence(1), :project_pages_id => d)}
我敢肯定还有其他方法,但这又快又脏,而且只是一个测试。