使用Devise创建用户(无需注册)

时间:2013-02-03 11:53:47

标签: ruby-on-rails devise mongoid

我希望能够创建用户并将其保存到数据库,但Devise不会将请求传递给数据库,也不会返回任何错误。

alice = User.new
alice.name = "Alice"
alice.save!

alice成功保存,而不是保存在数据库中。

我可以User.find(alice.id),只要我在同一个会话中就会返回数据。

1 个答案:

答案 0 :(得分:0)

如果有人遇到此问题,我发现即使设置

,Devise也会强制执行电子邮件
email_required?
    false
end

所以即使点击save!也不会引发错误。

因此,我找到的唯一方法是使用类似的东西创建一个假电子邮件

"guest_#{Time.now.to_i}#{rand(99)}@anyemail.com"

然后分配self.role = guest,以便轻松识别帐户。

我希望这会有所帮助