`
poppinhai
  • 浏览: 4929 次
社区版块
存档分类
最新评论

rails devise gem使用

阅读更多

最近一直在学习rails,学习了有大约一个月的时间了,前段时间看GEM的使用教程总是很费劲,最近自己静下心来,专心学习了一下GEM的使用,下面就介绍一下devise这个gem的使用。

进入项目

1、添加gem

   gem 'devise'

2、安装gem

   bundle install

3、创建一个页面方便我们测试是否成功

  rails g controller home index

4、初始化devise

  rails g devise:install

会有如下提示:

 

  1.   1. Setup default url options for your specific environment. Here is an

         example of development environment:

     

           config.action_mailer.default_url_options = { :host => 'localhost:3000' }

     

         This is a required Rails configuration. In production it must be the

         actual host of your application

     

      2. Ensure you have defined root_url to *something* in your config/routes.rb.

         For example:

     

           root :to => "home#index"

     

      3. Ensure you have flash messages in app/views/layouts/application.html.erb.

         For example:

     

           <p class="notice"><%= notice %></p>

           <p class="alert"><%= alert %></p>

     

      4. If you are deploying Rails 3.1 on Heroku, you may want to set:

     

           config.assets.initialize_on_precompile = false

     

         On config/application.rb forcing your application to not access the DB

         or load models when precompiling your assets.

5、创建user model

  rails g devise user

6、这样创建出来的user 模型只有注册邮件,密码的功能我们要给他加入用户名

   rails g migration add_name_to_users

这样我们就把他加入到了user model中

然后执行

rake db:migrate

7、产生视图模板

rails g devise:views

然后我们就可以订制我们自己的视图了

我们可以用

current_user方法获得session中的数据

8、生成index

rails g controller home index

 

修改index.html

<% if user_signed_in? %> <!-- Provided by devise -->
    <div style="float:right">
      <%= current_user.email %> |
      <%= link_to '用户信息', edit_user_registration_path %> |
      <%= link_to '退出登录', destroy_user_session_path, :method => :delete %> |
    </div>
    <% end %>
    <% unless user_signed_in? %>
    <div style="float:right">
      <%= link_to '注册', new_user_registration_path %> |
      <%= link_to '登录', new_user_session_path %>
    </div>
<% end %>

修改默认路由

root :to => "home#index"

 最后

rails s

分享到:
评论

相关推荐

    awesome-rails-gem-zh_CN, Rails 常用 Gem 列表 - Awesome Rails Gem 中文版.zip

    Awesome Rails Gem 是一个广泛收录了Rails开发中常用、实用、有趣的Gem的列表,旨在帮助开发者提高开发效率和代码质量。这个中文版的Awesome Rails Gem列表,为国内开发者提供了一个方便的参考资源,使他们能够更好...

    与devise_invitable一起使用的自定义rails_admin邀请操.zip

    在Ruby on Rails开发中,Devise Invitable是一个非常流行的用户邀请系统,它扩展了Devise gem的功能,允许用户向其他人发送邀请。Rails Admin则是一个强大的后台管理界面生成工具,可以帮助开发者快速创建管理面板。...

    devise-jwt:具有devise和rails的JWT令牌认证

    设计:: JWT devise-jwt是一个扩展,它使用令牌进行用户身份验证。... devise-jwt只是之上的 ,可将其配置为与和Rails一起使用。 升级说明 v0.7.0 从v0.7.0版开始, Blacklist撤销策略已重命名为“ Denylist而Whiteli

    rails_grape_auth:用于devise_token_auth + grape_devise_token_auth的测试Rails应用

    “devise_token_auth”是一个流行的Ruby gem,用于在Rails应用中添加基于令牌的身份验证。它为API提供了登录、注册、密码重置等核心功能,而且支持JSON Web Token(JWT)和会话两种模式。通过生成和验证令牌,这个...

    使用Rails、Vue、GraphQL和Devise进行令牌身份验证_Rub.zip

    使用Rails的`devise_token_auth` gem,我们可以轻松地实现RESTful API的令牌身份验证。 2. **Devise**:Devise是一个全面的认证解决方案,支持多种认证策略,包括电子邮件确认、密码重置等。在Rails应用中,我们将...

    多租户设计:mtdevise将basecamp风格的用户登录添加到Rails应用程序中的ruby

    PHC MTDevise Rails 5.1引擎为Rails Devise gem添加了多租户和帐户管理功能。 包含Plataformatec Devise和必需的自定义Bootstrap Devise视图。 使用子域作用域和account_id列进行多租户。 添加basecamp样式登录以...

    devise-i18n:devise gem的翻译

    devise-i18n “是基于Warden的Rails的灵活身份验证解决方案”。 国际化(aka i18n)是“使计算机软件适应目标市场的不同语言,地区差异和技术要求的手段”。 Devise在控制器,模型和其他区域中支持i18n,但不支持...

    CanCan1Ruby2Devise3Rails4:在 Rails 4 上使用 CanCan 1 和 Devise 3 的应用程序

    ##设置 CanCan 1:Ruby 2:设计 3:Rails 4本指南部分是根据 Tony Amoyal 的教程 [here.] ( ) 创建的######创建一个新应用程序: rails new appbundle install ######安装设计: gem 'devise'bundle install rails ...

    Rails 101 入门电子书

    - 使用Devise gem。 - 实现登录/注册功能。 - 关联Group和User。 - **安全措施**: - 加入权限控制。 - 保护敏感数据。 #### 十一、练习作业4-User可以加入、退出社团 - **目标**: - 用户能够加入或退出特定...

    具有Devise身份验证的模板RailsAngular应用程序_JavaSc.zip

    标题中的“具有Devise身份验证的模板RailsAngular应用程序”指的是一个使用Ruby on Rails框架和AngularJS前端库构建的Web应用程序,其中集成了Devise gem进行用户身份验证。这个项目可能是为了展示如何在Rails后端与...

    使用devise_openid_authenticatable的devise_example版本_Ruby_.zip

    标题中的"使用devise_openid_authenticatable的devise_example版本_Ruby_"表明这是一个关于Ruby on Rails应用的项目,具体来说,它使用了`devise` gem的一个扩展——`devise_openid_authenticatable`,用于实现...

    使用Devise的Noodall用户登录和管理_Ruby_下载.zip

    使用Devise生成一个名为User的模型,这将创建一个包含必要字段和验证的模型文件,例如:`rails generate devise User`。这会生成一个User模型,并且在数据库迁移文件中添加相应的字段,如email、encrypted_password...

    Rails-APIs:Rails API演示http谓词的工作原理,使用devise gem进行身份验证,考拉FB身份验证,使用kaminari gem进行分页等

    自述文件 添加Kaminari进行分页 分页的一些基本查询 # get records according to pages Post ....# default limit is 11 and offset is 25 post = Post . page ( 2 ) ....# per is used for set per page counts of ...

    Rails项目源代码

    在Rails中,可以使用Devise这样的gem来处理用户身份验证,提供注册、登录、密码重置等功能。用户模型通常会包含确认令牌、加密密码等相关字段。 4. **数据库和ActiveRecord**: Rails使用ActiveRecord作为ORM,它...

    milia:Rails5(或Rails4)+ Devise的轻松多租户

    您正在查看将miilia与Rails 5.x应用程序一起使用的文档。 如果要使用Rails 4.2.x,请切换到。介绍Milia是(SaaS)应用程序的可靠选择,该应用程序由多个租户(即公司或组织)使用,并且针对多租户应用程序的常见...

    devise_latcheable:设计模块以使用 Latch 身份验证

    这个 gem 使用 Latch 帐户为任何使用 devise gem 的 Rails 应用程序添加了一个额外的安全层。 为了使用这个 gem,你需要知道如何使用 rails 和 devise 开发简单的应用程序。 Devise 是一个为您处理用户注册和登录...

    Rails3 device and cancan

    - 用户模型集成:使用rails generate devise MODEL_NAME来为用户模型添加Devise认证功能。 - 配置邮件发送:配置Devise发送邮件用到的SMTP设置,以便用户可以收到如密码重置等通知。 - 自定义用户注册表单:...

    Advanced Rails

    7. **Rails插件与Gem**:Rails社区提供了丰富的插件和Gem,如Devise用于身份验证,Paperclip或Carrierwave处理文件上传,Resque或Sidekiq实现后台任务队列。掌握如何选择和使用这些工具来扩展应用功能。 8. **Rails...

    devise-i18n, 设计 gem的翻译.zip

    devise-i18n, 设计 gem的翻译 devise-i18n 设计"是一种基于warden的Rails 灵活认证方案"。 国际化( aka i18n ) 是一个"计算机软件适应不同语言。区域差异和目标市场技术要求的方法"。在控制器。模型和其他领域中支持...

    Ruby on Rails实践

    总的来说,Ruby on Rails实践涉及的知识点包括但不限于:Ruby语言基础、Rails框架结构、MVC模式、ActiveRecord、路由、测试驱动开发、插件和gem使用、以及部署策略。通过学习和实践,开发者能够快速构建功能丰富的...

Global site tag (gtag.js) - Google Analytics