如何使用Rails + Devise覆盖验证

Die*_*ias 9 ruby-on-rails devise

我正在尝试覆盖:message validates_presence_of电子邮件和密码,但我不能.我该如何解决这个问题?

DGM*_*DGM 19

源代码显示另一条路径:您可以覆盖某些方法以确定是否需要它们:

  def password_required?
    !persisted? || !password.nil? || !password_confirmation.nil?
  end

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

将这些功能放在用户模型中,并根据需要进行更改.

  • 根据你想要实现的目标,你也应该调用`super`,例如`def password_required ?; 客人??假的:超级; end`. (3认同)

Jes*_*ott 5

我在这里描述如何自定义您的设计验证:http://jessewolgamott.com/blog/2011/12/08/the-one-where-devise-validations-are-customized/

您将删除:validatable并替换/自定义其余部分