使用 Devise 进行身份验证
将 gem 添加到 Gemfile:
gem 'devise'
然后运行 bundle install
命令。
使用命令 $ rails generate devise:install
生成所需的配置文件。
在每个环境中为 Devise 邮件程序设置默认 URL 选项在开发环境中添加以下行:
config.action_mailer.default_url_options = { host: 'localhost', port: 3000 }
你的 config/environments/development.rb
同样在制作这个编辑 config/environments/production.rb
文件并添加
config.action_mailer.default_url_options = { host: 'your-site-url'}
然后使用以下命令创建模型:$ rails generate devise USER
其中 USER
是要为其实现身份验证的类名。
最后,运行:rake db:migrate
,你们都已经完成了。
自定义视图
如果需要配置视图,可以使用 rails generate devise:views
生成器将所有视图复制到应用程序。然后你可以根据需要编辑它们。
如果你的应用程序中有多个 Devise 模型(例如 User 和 Admin),你会注意到 Devise 对所有模型使用相同的视图。Devise 提供了一种自定义视图的简便方法。在 config/initializers/devise.rb
文件中设置 config.scoped_views = true
。
你还可以使用生成器创建范围视图:rails generate devise:views users
如果你只想生成几组视图,例如可注册和可确认模块的视图,请使用 -v 标志:rails generate devise:views -v registrations confirmations