我使用grails 2.4.3,创建了一个安全过滤器。我的项目名称中有3个控制器:admin,login和report。所以我在过滤器中添加了以下内容:
def filters = {
all(controller: 'Admin', action: '*') {
before = {
if (!session.company) {
redirect(controller: 'login', action: 'auth')
return false
}
}
after = { Map model ->
}
afterView = { Exception e ->
}
}
}
我的意思是来自管理员控制器的任何操作,如果!session.company
,页面将被重定向到登录控制器中的auth操作。
现在我想在此过滤器中添加控制器报告,我该怎么做?我试过了all(controller: ['Admin', 'Report'], action: '*')
,但它没有用。
任何帮助将不胜感激。感谢
答案 0 :(得分:7)
使用竖管符号添加多个控制器,例如
def filters = {
all(controller: 'Admin|Report', action: '*') {
...
}
}
参考#How to define mutliple distinct controllers in Grails 2 filter?