Mah*_*ubi 5 ruby ruby-on-rails devise
我想通过控制台手动创建用户:
User.find_or_create_by(email: "user@mail.com", first_name: "Stan", last_name: "Smith", password: "password", password_confirmation: "password", confirmed_at: Time.now)
Run Code Online (Sandbox Code Playgroud)
我在过去的项目中已经做了很多次,但这次它没有用.它没有获取Devise密码模型属性,所以这是我得到的错误:
PG::UndefinedColumn: ERROR: column users.password does not exist
Run Code Online (Sandbox Code Playgroud)
我有Rails 4.1.4和Devise 3.3.0.最新版本有什么变化吗?
谢谢.
AJ *_*ory 11
而不是User.find_or_create_by你应该使用User.create.
Devise在创建时接受密码和密码确认,但实际表只有一个名为的列encrypted_password.
"查找"部分User.find_or_create_by正在寻找一个名为"密码"的列,该列不存在.
仍然如果你想使用find_or_create_by它,它接受块:
User.find_or_create_by(email: "user@mail.com", first_name: "Stan", last_name: "Smith") do |user|
user.password = "password"
user.confirmed_at = Time.now
end
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1310 次 |
| 最近记录: |