`
s8186255
  • 浏览: 87893 次
  • 性别: Icon_minigender_1
  • 来自: 新疆乌鲁木齐
社区版块
存档分类
最新评论

有条件的使用filter

阅读更多

使用filter进行权限控制,是rails的一个特点。

我们在使用filter的时候,通常是结合使用authentication插件。
1.在需要使用登录验证的地方都会按照如下方式使用:

before_filter :login_required
 

 

 

2.如果有些action需要有豁免权,则可以使用

before_filter :login_requird,:except=>[:show]
 



3.如果有些action需要在一些条件下使用login_required,有时不需要验证,该怎么办。
我的做法是:
在控制器中创建一个private方法,如:

def check_something
 if ...(这里放置条件)

login_required

end

end
 


然后将filter部分代码改为如下:

before_filter :check_something,:except=>[:show]
 


这样,就可以实现有条件的执行某个方法了。

另外还有一种采用block的控制方法,大家可以参考http://www.antunkarlovac.com/blog/2008/07/15/passing-arguments-to-before_filter-in-a-rails-controller/

 

 

 

1
0
分享到:
评论

相关推荐

    Filter的使用的demo

    `Filter`的主要方法有`performFiltering()`和`publishResults()`。前者负责根据用户输入的查询字符串执行过滤操作,后者则将过滤后的结果传递给UI更新。 以下是一个简单的`Filter`使用示例: ```java public class...

    Datagrid-filter插件

    `Datagrid-filter`插件则进一步增强了Grid的功能,通过添加过滤器,使用户可以根据预定义或自定义的条件对数据进行筛选,减少了手动查找特定信息的时间。 在实际应用中,`Datagrid-filter`插件的使用非常简单。`...

    delphi资源-Filter中的模糊过滤

    ### Delphi资源—Filter中的模糊过滤 #### 一、模糊过滤概述 ...无论是使用BDE还是ADO,都有各自的特点和适用场景。了解并掌握这些差异性能够帮助开发者更高效地完成数据处理任务。希望本文的内容对您有所帮助!

    使用 Filter 作为控制器的 MVC

    然而,有时候我们可能会遇到一些场景,需要在传统意义上的控制器之外使用Filter作为额外的控制层。这种做法在某些复杂应用中可以提供更灵活的控制策略。 标题"使用 Filter 作为控制器的 MVC"暗示我们将探讨如何利用...

    J2EE之filter的应用

    3. **效率优化**:对于性能敏感的场景,应尽量减少 Filter 的处理时间,例如,避免在 Filter 中进行耗时的操作,或者使用异步处理来提高效率。 总结,J2EE 中的 Filter 是一个强大的工具,它可以用来增强 Web 应用...

    RF_Filter.rar_RF-FILT_RFFilter怎么用_RF_Filt_rf filt_rffilter

    本篇文章将围绕"RF-FILT_RFFilter"这一滤波设计软件进行详细介绍,包括其使用方法和在射频滤波设计中的重要性。 一、RF-FILT_RFFilter软件简介 "RF-FILT_RFFilter"是一款专为射频滤波器设计而开发的工具,它具备...

    ExtJS Filter 实现表格过滤

    - **文本过滤**:允许用户输入文本,匹配列中的内容,常见的有“包含”、“不包含”、“等于”、“不等于”等条件。 - **数字过滤**:支持比较操作,如“大于”、“小于”、“等于”等,还可以设置范围过滤。 - **...

    L7Filter-OpenCAPWAP

    7. 许可证文件(LICENSE):定义了项目可以被使用的条款和条件。 通过深入研究这些文件,你可以学习到网络协议解析、数据包过滤技术、C++编程以及开源软件开发的最佳实践。对于网络管理员、安全专家或者希望在无线...

    MVC3 Filter 验证 AOP 实例

    MVC3中的Filter主要有四种类型: - Authorization Filters(授权过滤器):用于控制用户访问权限,可以基于角色或特定条件进行授权。 - Action Filters(操作过滤器):在操作方法执行前后执行,可用于数据验证、...

    filter优化

    - 考虑将`NOT EXISTS`子查询中的条件尽可能地移至主查询的`WHERE`子句中,以减少`FILTER`操作的使用。 - 如果可能,使用`LEFT JOIN`和`IS NULL`代替`NOT EXISTS`子查询,这样可以避免额外的`FILTER`操作。 2. **...

    xslt_filter-1.5.2.tar.gz

    5. **examples**:示例目录,提供了使用XSLT Filter的实例,有助于初学者快速上手。 6. **Makefile**或类似文件:构建脚本,用于编译和打包软件。 在部署和使用XSLT Filter 1.5.2时,开发者需要根据系统环境编译...

    JQ filter() 过滤函数

    例如,如果你有一个包含多个`<div>`的集合,你可以通过`filter('.class')`来只保留具有指定类名的`<div>`。 2. **函数过滤**: 更加灵活的用法是提供一个函数作为参数。这个函数会被调用一次,针对集合中的每个...

    filter 使用实例

    在编程领域,`filter` 是一个非常常见的工具,特别是在 Python 和其他高级编程语言中,它用于从序列(如列表、元组或集合)中筛选出满足特定条件的元素。本篇将通过实例详细讲解 `filter` 的使用过程,旨在帮助读者...

    基于Filter的组合查询加分页

    在"基于Filter的组合查询"中,可能是指在请求到达Servlet之前,利用Filter对请求参数进行预处理,例如筛选出特定的查询条件,以提高后续数据库查询的效率。 组合查询,通常指的是在一个SQL语句中使用JOIN操作从多个...

    msdn 全部实例 之filter

    “filter”一词在IT领域有多种含义,但在这里,它可能是指数据过滤、搜索过滤、网络过滤或程序中的条件筛选等功能。在编程中,过滤通常用于从数据集中选取满足特定条件的元素,如在数组、列表或数据库查询中应用过滤...

    Filter Solution v11.0

    8. **资源管理**:为了适应不同的硬件配置,Filter Solution可能有智能资源管理机制,根据系统资源自动调整工作负载。 9. **文档与支持**:高质量的用户手册和在线帮助系统是必不可少的,它们会详细解释如何使用...

    Nuhertz Filter Solutions 2006

    尽管现代有更多更新的工具出现,但Nuhertz Filter Solutions 2006仍然是理解和学习滤波器设计原理的宝贵资源。通过这款软件,用户可以深入理解滤波器设计的基本概念,如频率响应、相位特性、稳定性和计算复杂度等,...

    ztree filter demo ztree的一些代码

    《zTree过滤功能详解与代码示例》 zTree是一款基于JavaScript的树形插件,广泛应用于网页中的数据展示和操作。它具有丰富的配置项、强大...对于初学者和有经验的开发者来说,zTree都是一个值得学习和使用的强大工具。

    Filter_3rdOrderLC_三阶lc滤波器_filter_

    文件“filter.ac0”和“filter.ic0”可能分别存储了滤波器在交流条件下的模拟结果和初始条件数据。这些数据有助于分析滤波器在不同频率下的响应,比如通带、截止频率和过渡带的特性。而“filter.lis”可能是仿真输出...

    filter-tag:可以有条件地过滤其内容的 Liquid 块标签

    可以有条件地过滤其内容的 Liquid 块标签。 安装 如果您使用的是 bundler,请将此 gem 添加到您站点的:jekyll_plugins组中的 Gemfile 中: group :jekyll_plugins do gem 'octopress-filter-tag' end 然后用 ...

Global site tag (gtag.js) - Google Analytics