在Rails中使用Devise gem时如何创建没有电子邮件和密码的用户?

THp*_*ubs 7 ruby-on-rails devise ruby-on-rails-4

在我的Rails应用程序中,管理员是将用户添加到系统的人员.如果用户没有电子邮件,则不会为他生成密码,也无法登录.但如果用户有电子邮件,则会生成密码.但问题是,设计不允许空白密码.我们该如何解决这个问题?

mat*_*nco 15

您可以在用户模型中覆盖它们:

def password_required?
  false
end

def email_required?
  true
end
Run Code Online (Sandbox Code Playgroud)

编辑:

def password_required?
   new_record? ? false : super
end
Run Code Online (Sandbox Code Playgroud)