where
クロージャー内で暗黙的なパラメーターを使用するにはどうすればよいですか?
現在の回避策を特に誇りに思っているわけではありません。
def index() {
def params = params // <-- UGLY HACK
respond Project.where {
if (params.sender) {
sender.id == params.sender // <-- OTHERWISE THIS WOULD FAIL
}
}
}
また、上記のような一般的な Groovy コードをクロージャー内に配置することで、クエリをパラメーター化できることにも気付きましたif
。不思議なことにparams
、ハックしなくても、条件文の内部で問題が発生することはありませんでした。この慣行は問題ありませんか、それとも推奨されませんか?