我正在关注轨道教程,我坚持第7章(图7.8附近)
我无法使用ActiveRecord类的update_attributes方法更新属性
我正在采取的确切步骤和错误给了我:
1.9.3p392 :026 > user = User.first
User Load (0.3ms) SELECT "users".* FROM "users" LIMIT 1
=> #<User id: 1, name: "John Denisov", email: "denisov@gmail.com", created_at: "2013-06-17 19:49:49", updated_at: "2013-06-17 19:49:49", password_digest: "$2a$10$eU2XgCqdKP9iBf7.2J4rKuBYmyicO42uahlm3DWwT7Xe...">
1.9.3p392 :027 > user.update_attributes(name: "Example User", email: "example@railstutorial.org", password: "foobar", password_confirmation: "foobar")
(0.1ms) begin transaction
User Exists (0.3ms) SELECT 1 AS one FROM "users" WHERE (LOWER("users"."email") = LOWER('example@railstutorial.org') AND "users"."id" != 1) LIMIT 1
(0.1ms) rollback transaction
=> false
为什么它会给我用户存在错误?这有点显而易见,我正在尝试更新,而不是创建 数据库条目。
答案 0 :(得分:1)
您对电子邮件进行了唯一性验证,并且数据库中已存在针对其他用户的电子邮件example@railstutorial.org
。
尝试使用其他电子邮件地址。