所以在过去我们有过acts_as_authenticated,restful_authentication等...但是现在有各种各样的选项以及Rails本身具有身份验证功能。
我即将开始一个新的rails项目,并且对每个人的偏好(非oAuth)身份验证以及您建议我考虑的内容感兴趣?
谢谢, 斯科特
答案 0 :(得分:26)
Devise是一个全功能的身份验证解决方案,可以处理所有问题 控制器逻辑和窗体视图。
首先,在Gemfile中包含Devise gem:
gem 'devise' 'version-if-u-want-any specific'
要安装新添加的gem,请使用:
bundle install
要安装Devise,请运行:
rails g devise:install
并手动执行一些设置,这些设置显示在命令的输出中。
(可选)出于自定义目的,我们可以在应用程序的视图中包含Devise gem的视图:
rails g devise:views
(可选)生成将由Devise使用的用户模型:
rails g devise user
迁移您的数据库:
rake db:migrate
您可以使用以下方式查看路线:
rake routes
要注册用户,请访问:
localhost:3000/users/sign_up
答案 1 :(得分:3)
使用Devise它是验证的最佳宝石。您将在网上找到大量的教程和帮助。当我开始使用它的第一个rails应用程序时,它非常容易安装并使其正常工作。
这应该让你开始,但不要犹豫,阅读设计维基,你应该能够很容易地运行一切
答案 2 :(得分:2)
您可以查看https://www.ruby-toolbox.com/categories/rails_authentication
在我的项目中,我通常使用设计。
答案 3 :(得分:2)
正如所有其他人所说,我也一直在我的Rails项目中使用Devise,来自Rails 2.3,3.2和现在的4.0.1。它很好,很多例子,易于用于“正常”任务。
它可以在每个部分进行自定义,即使有时会变得棘手。