`
123fly
  • 浏览: 12015 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论

rails用户登录

    博客分类:
  • ruby
阅读更多

要使用户登录上去,要验证用户的密码与帐号匹配

在pages_controller.rb中写代码如下

def  user_landing
 @user = User.authenticate(params[:id], params[:pass])
      if @user
        session[:user_id] = @user.id
        flash[:notice]="登录成功"
        render 'student'
      else
        flash[:notice]="帐号与密码不匹配"
        render 'landing'
      end
    end

 要在modles下的user.rb中写authentlcate的方法

代码

def self.authenticate(id, password)
    user = User.find_by_user_id(id)
    if user && password == user.password
      return user
    end
    false
  end

 html页面的代码如下

代码

   <%= form_tag("/user_landing") do %>
         <%= label_tag("ID:") %>
        <%= text_field_tag(:id) %>
         <br>
         <%= label_tag("Password:") %>
         <%= password_field_tag(:pass) %>

      <br>
        <%= submit_tag("登录") %>
        <%end%>
</div>
<% if flash[:notice]%>
<div><%=  flash[:notice]  %></div>
<% end  %>

 这是我在学习ruby on rails 时遇到的问题

分享到:
评论

相关推荐

    关于Rails登录和验证插件http_authentication restful-authentication

    在Rails应用中实现用户登录和验证是构建任何Web服务的基础。本文将深入探讨Rails中的http_authentication和restful-authentication插件,这两种方法都常用于用户身份验证。 首先,让我们了解HTTP基本认证...

    Rails项目源代码

    图片的展示、上传表单、用户登录/注册页面等都会在视图中实现。 7. **控制器逻辑**: 控制器处理HTTP请求,调用模型方法,操作数据,并决定哪个视图应该被渲染。例如,`UsersController`可能有`create`、`show`、`...

    Rails 101 入门电子书

    ### Rails 101 入门电子书知识点详解 #### 一、简介 《Rails 101 入门电子书》是一本非常适合初学者直接入门的书籍,它由xdite编写并出版于2014年6月10日。本书主要针对的是希望学习Ruby on Rails框架的读者,特别...

    weixin_rails_middleware, 微信集成 ruby weixin_rails_middleware for integration weixin..zip

    综上所述,`weixin_rails_middleware` 是一款强大且易于使用的工具,能够帮助 Ruby on Rails 开发者无缝集成微信服务,实现各种定制化的微信功能,如自动回复、用户管理、消息推送等。通过深入理解其工作原理和使用...

    RailsSpace

    第六章“Logging in and out”着重讲解了用户登录和登出机制的实现。这包括会话管理、Cookies和Sessions的使用等。本章还介绍了如何保护应用免受常见的安全威胁,比如跨站请求伪造(CSRF)攻击。 ##### 3.2 高级登录...

    rails敏捷开发的购物车系统

    这可以通过使用Rails的身份验证机制,如Devise或Authlogic,实现用户登录和会话管理。 最后,测试是任何Rails应用不可或缺的一部分。使用RSpec进行行为驱动开发(BDD)测试,Rake任务自动化测试执行,确保购物车...

    Rails 101S

    - **加入用户认证功能**:增加用户注册、登录、注销等基础功能。 - **扩展用户资料**:在用户模型中增加额外字段(如用户名),并提供账号设置页面。 - **作者机制实现**:让文章与用户建立关联,实现“作者”概念。...

    rails 项目起步示例

    - **Session** 和 **Cookie**:用于跟踪用户状态,如登录信息。 - **Authentication** 和 **Authorization**:身份验证和授权机制,确保用户安全。 - **Asset Pipeline**:处理和优化应用的静态资源,如JS、CSS的...

    pretender, 在 Rails 中作为另一个用户登录.zip

    当用户登录后,这些信息会被存储,然后在后续请求中用来验证用户身份。然而,如果想以管理员的身份查看并模拟另一个用户的行为,传统的登录方式就无法满足需求。这就是 Pretender 出现的原因。 Pretender 的核心...

    web开发之rails最新调试通过购物车代码

    9. **安全和认证**:"程序登录上的一些问题进行的代码调整"可能指的是添加用户身份验证,确保只有登录用户才能操作自己的购物车。这可能涉及到如Devise这样的认证库。 综上所述,这个压缩包中的代码展示了如何在...

    Rails上的API:使用Rails构建REST APIAPIs on Rails: Building REST APIs with Rails

    4. **添加认证逻辑**:为了保护敏感数据,可以使用Devise或其他认证插件实现用户登录验证。 5. **测试API**:使用Postman等工具发送请求,测试API是否按预期工作。 通过以上步骤,我们可以构建出一个基本可用的...

    Ruby on Rails Tutorial Learn Rails by Example 的源代码

    11. **安全**:`sample_app`可能包含了如`devise`这样的身份验证库,展示了如何处理用户注册、登录和授权。 12. **部署**:学习如何将`sample_app`部署到如Heroku这样的云平台,是了解Rails生产环境配置的重要一环...

    Ruby on Rails实现最基本的用户注册和登录功能的教程

    在`SessionsController`中,我们需要实现用户登录的逻辑。 ```ruby # app/controllers/sessions_controller.rb class SessionsController def new end def create @user = User.find_by(username: params[:...

    Rails 3 in Action

    ### Rails 3 in Action 关键知识点解析 #### 一、Ruby on Rails 框架简介 **Rails 3 in Action** 这本书介绍了 **Ruby on Rails**(简称 Rails)这一 Web 开发框架的核心概念和技术细节。Rails 自发布以来便以其...

    举例理解Ruby on Rails的页面缓存机制

    在 ChangingThePresent.org 的案例中,由于首页内容根据用户登录状态有所不同,作者采用了“hide-and-seek”策略。即先展示所有用户的公共元素,然后通过 JavaScript 检查 cookie 来决定显示或隐藏特定内容。这样,...

    ruby on rails在线考试系统

    在线考试系统的功能,如用户登录、选择考试、提交答案等,都应有相应的测试覆盖。 7. Gems和插件:Rails社区提供了大量的Gems(Ruby的包管理系统),可以方便地扩展功能。例如,Devise用于用户认证,Cancancan进行...

    InspiniaAdmin 2.6.1 Rails_Full_Version

    1. **用户认证与授权**:内置了用户注册、登录、权限管理等功能,可以轻松实现用户身份验证和角色权限控制,确保后台的安全性。 2. **数据可视化**:集成了一系列图表库,如Chart.js和Morris.js,用于数据展示和...

    在Rails中使用SSL

    Rails框架支持在应用程序中轻松集成SSL,以保护用户敏感信息,如登录凭据和支付详情。以下是一些关于在Rails中实施SSL的关键知识点: 1. **SSL简介**:SSL(Secure Sockets Layer)是一种网络安全协议,用于加密...

Global site tag (gtag.js) - Google Analytics