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