Devise用起来着实方便,按着教程很容易走下来,但是默认是用email登陆,如果改成普通的username呢?
-
安装官方文档完成安装和设置
-
找到config/initializers/devise.rb中的下面内容,去掉注释,将email改为username
config.authentication_keys = [:email]
-
生成devise的视图文件
rails generate devise:views
-
把登陆和注册的页面中email改成username
app/views/devise/sessions/new.html.erb
app/views/devise/registrations/new.html.erb -
以User为模型作为例子,去掉User类中的recoverable,再加上下面的代码
def email_required? false end def email_changed? false end
初步就是如此。