过滤器

从与单个控制器打交道更进一步,把安全应用到所有控制器。要完成这一点,我们需要创建过滤器。
1.创建过器滤器
命令行输入grails create-filters Admin
2.会在grails-app/conf下生成AdminFilters.groovy
这个例子是把all过滤器更名为adminOnly,任何可能更新记录的调用都被限制为登录的管理员才能操作。
class AdminFilters {

def filters = {
adminOnly(controller:'*', action:'(create|edit|update|delete|save)') {
before = {
if(!session?.user?.admin){
flash.message="Sorry,admin only"
redirect(controller:'race',action:'list')
return false
}
}
}
}

}

注:一个经常需要留意的地方是为过滤器定义多个Action的方式。在beforeInterceptor中,传入的是Action列表。在过滤器中,它们使用正则表达式来指定。除了这个区别,可以在过滤器中完成所有在拦截器中做的事情。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值