Я пытаюсь сделать findAllWhere в gsp grails, передавая две переменные: одну, которая является атрибутом, и другую, которая является значением, которое я хочу, чтобы этот атрибут был равен. IE (автор: Марк Твен) Я не могу понять синтаксис, и ошибка, которую я получаю, не помогает.
${Application.findAllWhere((${group1}): ${group})}
Group1 — это переменная, переданная из контроллера, а group — это переменная из g:each. Вот ошибка.
Error 500:
Servlet: default
URI: /archetype/application/applicationPortfolio/GroupLangTechOwn
Exception Message: No signature of method:
C__projects_Archetype_grails_app_views_application_applicationPortfolio_gsp.$() is
applicable for argument types:
(C__projects_Archetype_grails_app_views_application_applicationPortfolio_gsp$_run_closure2_closure56_closure144) values: [C__projects_Archetype_grails_app_views_application_applicationPortfolio_gsp$_run_closure2_closure56_closure144@239dbdd6] Possible solutions: is(java.lang.Object), run(), run(), any(), use([Ljava.lang.Object;), any(groovy.lang.Closure)
Caused by: Error processing GroovyPageView: No signature of method: C__projects_Archetype_grails_app_views_application_applicationPortfolio_gsp.$() is applicable for argument types: (C__projects_Archetype_grails_app_views_application_applicationPortfolio_gsp$_run_closure2_closure56_closure144) values: [C__projects_Archetype_grails_app_views_application_applicationPortfolio_gsp$_run_closure2_closure56_closure144@239dbdd6] Possible solutions: is(java.lang.Object), run(), run(), any(), use([Ljava.lang.Object;), any(groovy.lang.Closure)
Class: applicationPortfolio.gsp
At Line: [631]
Спасибо!
${}, когда весь вызов метода уже находится между набором${}. Попробуйте просто${Application.findAllWhere((group1): group)}. Наверное, и()вокругgroup1тоже не нужны. - person Weezle   schedule 19.07.2012