【发布时间】:2015-12-03 18:32:43
【问题描述】:
在我的应用程序中,当我尝试创建用户时
User.create(email:"jnan@gmail.com",encrypted_password: "foobar",name:"jnan")
显示
(0.1ms) begin transaction
User Exists (0.2ms) SELECT 1 AS one FROM "users" WHERE "users"."email" = 'jnan@gmail.com' LIMIT 1
(0.1ms) rollback transaction
=> #<User id: nil, email: "jnan@gmail.com", encrypted_password: "foobar", reset_password_token: nil, reset_password_sent_at: nil, remember_created_at: nil, sign_in_count: 0, current_sign_in_at: nil, last_sign_in_at: nil, current_sign_in_ip: nil, last_sign_in_ip: nil, created_at: nil, updated_at: nil, name: "jnan">
我的用户包含
=> User(id: integer, email: string, encrypted_password: string, reset_password_token: string, reset_password_sent_at: datetime, remember_created_at: datetime, sign_in_count: integer, current_sign_in_at: datetime, last_sign_in_at: datetime, current_sign_in_ip: string, last_sign_in_ip: string, created_at: datetime, updated_at: datetime, name: string)
【问题讨论】:
-
检查您的验证错误。
-
顺便说一句,您可能应该设置
password和password_confirmation而不是encrypted_password。 -
或采取设计或任何其他身份验证宝石。大声笑
-
您在使用设计吗?要检查验证错误,请执行
user = User.create(...之类的操作,然后输入user.errors.messages -
是的...问题已解决,感谢您提供的信息,顺便说一下我接受了@MarekLipka 的回答:)
标签: ruby-on-rails model-view-controller model