3
我正在处理的项目目前使用各种过滤器。过滤器本身效果很好。我遇到的问题是,当指定哪个控制器应该执行过滤器时,我会得到一个非常大的列表。在功能上,这工作正常,但它最终变得丑陋,有些笨拙。包装中的Grails过滤器控制器
def filters =
{
filterSomething(controller:'one|two|three|...|xyz', action:'*')
{
//before filter here, not important.
}
}
有没有办法指定过滤器只适用于给定包或软件包列表中的控制器?
如果没有任何东西可以使用,我正在考虑将某些东西绑定到bootstrap中,然后设置我的列表。
这可能是值得探讨的,因为它看起来没有什么开箱即可。它至少比硬编码巨型列表更优雅,尤其是因为忘记将新控制器添加到所述列表导致非常意外的行为。我猜测性能不会是一个问题,但结果可能会以某种方式缓存。 – Joseph 2013-04-25 18:50:04
当然,并且可能有更简单的方法从类字符串中获取类包名称,这样您就不需要按照我所做的方式重复列表。 – Alidad 2013-04-25 19:16:06
由于我不认为有这样做的官方方式,我会接受答案,因为这是一个合理的解决方法。 – Joseph 2013-04-29 14:28:47