ruby-on-rails – 使用AuthLogic保护内容

ruby-on-rails – 使用AuthLogic保护内容,第1张

概述我知道这听起来像一个非常非常简单的用例,我希望它是,但我发誓我已经到处寻找并且没有找到任何方式 – 甚至不是最好的方式 – 这样做. 我是Ruby,Rails以及周围所有东西的新品牌(可能解释很多).我正在使用的虚拟应用程序作为我的学习工具需要进行身份验证才能完成几乎任何有意义的 *** 作,因此我选择从解决该问题开始.我已经安装了AuthLogic gem并且它在介绍文档和Railscast所涵盖的范围 我知道这听起来像一个非常非常简单的用例,我希望它是,但我发誓我已经到处寻找并且没有找到任何方式 – 甚至不是最好的方式 – 这样做.

我是Ruby,Rails以及周围所有东西的新品牌(可能解释很多).我正在使用的虚拟应用程序作为我的学习工具需要进行身份验证才能完成几乎任何有意义的 *** 作,因此我选择从解决该问题开始.我已经安装了AuthLogic gem并且它在介绍文档和Railscast所涵盖的范围内工作得很好,但现在我可以注册,登录和注销……我需要用它做一些事情.

例如,我需要创建一个用户可以上传图像的页面.我打算让一个带有上传 *** 作方法的ImagesController,但我希望只有登录用户才能访问.我想在每个限制动作中,如果没有current_user,我可以添加代码重定向,但这看起来真的很冗长.

有没有更好的方法可以让我定义或识别受限区域并在一个地方处理身份验证检查?

解决方法 确保在application_controller.rb中有这些方法

def current_user_session  return @current_user_session if defined?(@current_user_session)  @current_user_session = UserSession.findenddef current_user  return @current_user if defined?(@current_user)  @current_user = current_user_session && current_user_session.recordenddef require_user  unless current_user    store_location    flash[:notice] = "You must be logged in to access this page"    redirect_to new_user_session_url    return false  endend

然后在您的控制器中,您可以使用前置过滤器来限制对页面的访问

class ExamplesController < ActionController::Base  before_filter :require_user,:only => :private  def public    // some public stuff  end  def private    // some protected stuff  endend
总结

以上是内存溢出为你收集整理的ruby-on-rails – 使用AuthLogic保护内容全部内容,希望文章能够帮你解决ruby-on-rails – 使用AuthLogic保护内容所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/langs/1288130.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-09
下一篇 2022-06-09

发表评论

登录后才能评论

评论列表(0条)

保存