我按照第一个选项按照this
的建议创建了管理员角色之后,我创建了一个种子来填充管理模型:
Admin.create!([{email: "email@example.com"},
{password: "password"},
{password_confirmation: "password"}])
管理模式
class Admin < ApplicationRecord
devise :database_authenticatable, :trackable, :timeoutable, :lockable
end
路线
Rails.application.routes.draw do
devise_for :admins
end
我尝试使用此密码在/ admins / sign_in上签名,但没有成功。
在rails控制台上我可以看到Admin.first,所以我不知道我在做什么。有什么想法吗?
答案 0 :(得分:1)
看起来你的语法有问题。括号类型很重要..现在您正在尝试使用数组[ ]
创建一个管理员,其中您的属性被划分为该数组中的不同对象。
尝试创建其他管理员,但这次没有方括号[ ]
和一个哈希{ }
:
Admin.create!({email: "email@example.com",
password: "password",
password_confirmation: "password"})
这样您就可以创建一个Admin
对象,其中包含电子邮件,密码等属性。
如果您想在一行代码中创建多个Admins
,那么您可以使用数组:
Admin.create!([{email: "email@example.com",
password: "password",
password_confirmation: "password"},
{email: "differentadmin@example.com",
password: "foobar",
password_confirmation: "foobar"}])