我希望能够创建用户并将其保存到数据库,但Devise不会将请求传递给数据库,也不会返回任何错误。
alice = User.new
alice.name = "Alice"
alice.save!
alice成功保存,而不是保存在数据库中。
我可以User.find(alice.id)
,只要我在同一个会话中就会返回数据。
答案 0 :(得分:0)
如果有人遇到此问题,我发现即使设置
,Devise也会强制执行电子邮件email_required?
false
end
所以即使点击save!
也不会引发错误。
因此,我找到的唯一方法是使用类似的东西创建一个假电子邮件
"guest_#{Time.now.to_i}#{rand(99)}@anyemail.com"
然后分配self.role = guest
,以便轻松识别帐户。
我希望这会有所帮助