【发布时间】:2013-06-18 05:29:59
【问题描述】:
我正在尝试了解清单 6.18(rails 3.2)中唯一性约束的测试。
describe "when email address is already taken" do
...
before do
user_with_same_email = @user.dup
user_with_same_email.save
end
it { should_not be_valid }
end
"这里的方法是创建一个与@user 具有相同电子邮件地址的用户,我们使用@user.dup 来完成,它会创建一个具有相同属性的重复用户。既然我们随后保存了该用户,原来的@用户的电子邮件地址已存在于数据库中,因此应该是无效的。”
我不清楚的部分是第一个用户在哪里/何时保存到数据库?即没有调用 user.save。汽车的魔力在哪里?
谢谢,
卡
【问题讨论】: