rails 3使用devise进行身份验证

时间:2010-12-30 20:28:24

标签: ruby-on-rails devise

我在我的Rails 3应用程序中使用Devise进行身份验证。

我的要求是使用用户名登录而不是电子邮件

所以我修改了 config / initializers / devise.rb 文件,如下所示

  

config.authentication_keys = [:username]

修改了registraion页面,以便在注册时获取用户名,电子邮件和密码。 还修改了登录,注册视图以包含用户名。


我的问题:

当我点击Forgot password时,会显示我输入email的字段。输入“电子邮件”并单击“发送重置密码说明”按钮后。

它会抛出错误Username can't be blank

我在哪里进行修改以解决此问题?

1 个答案:

答案 0 :(得分:4)

我认为authentication_keys设置:用户名为必填字段。

尝试编辑app / views / devise / passwords / new.html.erb,然后替换:

<%= f.label :email %>
<br />
<%= f.text_field :email %>

使用:

<%= f.label :username %>
<br />
<%= f.text_field :username %>