这是我的工厂女孩代码,每次我尝试生成评论时,它都告诉我“电子邮件已经被占用”,我已经重置了我的数据库,将 spec_helper 中的转换设置为 true,但仍然没有解决问题。我是新手,我使用的协会错了吗?谢谢!
Factory.define :user do |user|
user.name "Testing User"
user.email "test@example.com"
user.password "foobar"
user.password_confirmation "foobar"
end
Factory.define :course do |course|
course.title "course"
course.link "www.umn.edu"
course.sections 21
course.description "test course description"
course.association :user
end
Factory.define :review do |review|
review.title "Test Review"
review.content "Test review content"
review.association :user
review.association :course
end
最佳答案
我知道这是一个很老的问题,但是接受的答案已经过时了,所以我想我应该发布新的方法来做到这一点。
FactoryGirl.define do
sequence :email do |n|
"email#{n}@factory.com"
end
factory :user do
email
password "foobar"
password_confirmation "foobar"
end
end
来源:Documentation
它相当简单,这很好。
关于ruby-on-rails - rails 工厂女孩得到 "Email has already been taken",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5547730/