我在rails 3.2.2应用程序中有一个种子文件,它为我创建用户以测试网站布局和表单。它应该生成一个管理员和10个用户,但它只创建管理员和2个用户,而没有任何解释为什么它停止。它不会抛出异常,在检查数据库之前一切正常。
这是代码
require 'faker'
# Create an Admin user to test the site with
Admin.create first_name: "Admin",
last_name: "User",
email: "admin.user@example.com",
password: "foobarbaz",
password_confirmation: "foobarbaz"
# Generate 10 users to test with
10.times do
student_address = { street: Faker::Address.street_address,
city: Faker::Address.city,
state: Faker::Address.us_state_abbr,
zipcode: Faker::Address.zip_code }
first_name = Faker::Name.first_name
last_name = Faker::Name.last_name
Student.create first_name: first_name,
last_name: last_name,
email: "#{first_name}.#{last_name}@example.com",
student_id: rand(10 ** 6).to_s.rjust(6,'0'),
address_attributes: student_address,
phone_number: Faker::PhoneNumber.phone_number,
password: "foobar",
password_confirmation: "foobar"
end
答案 0 :(得分:0)
如果您希望create或update_attributes引发无效记录的异常,则需要使用相应的“bang”版本。
Student.create!