Variables Grails FindAllWhere和变量

Variables Grails FindAllWhere和变量,variables,grails,hql,gsp,Variables,Grails,Hql,Gsp,我试图在grailsgsp中执行findAllWhere,传入两个变量:一个是属性,另一个是我希望该属性等于的值。I.E.(作者:马克·吐温)我无法理解语法,我收到的错误也没有帮助 ${Application.findAllWhere((${group1}): ${group})} Group1是从控制器传递的变量,group是从g:each传递的变量。这里是错误 Error 500: Servlet: default URI: /archetype/application/applicat

我试图在grailsgsp中执行findAllWhere,传入两个变量:一个是属性,另一个是我希望该属性等于的值。I.E.(作者:马克·吐温)我无法理解语法,我收到的错误也没有帮助

${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(group:group)}
,如Weezle所示

但通常最好将其放入控制器并返回,例如:

class MyContoller {

def myAction() {
   [appList: Application.findAllWhere(group: group)]
}

myAction.gsp 

${appList}

<g:each var="app" in="${appList}">
  ${app.id} -  ${app.name}
</g:each>
class MyContoller{
def myAction(){
[应用程序列表:Application.findAllWhere(组:组)]
}
myAction.gsp
${appList}
${app.id}-${app.name}

尝试简化为:
${Application.findAllWhere(group:group)}
,如Weezle所示

但通常最好将其放入控制器并返回,例如:

class MyContoller {

def myAction() {
   [appList: Application.findAllWhere(group: group)]
}

myAction.gsp 

${appList}

<g:each var="app" in="${appList}">
  ${app.id} -  ${app.name}
</g:each>
class MyContoller{
def myAction(){
[应用程序列表:Application.findAllWhere(组:组)]
}
myAction.gsp
${appList}
${app.id}-${app.name}

也收到了这个错误:不确定它为什么会改变。异常消息:启动失败:C_uu项目u原型grails应用程序u视图u应用程序u应用程序组合gsp:280:意外标记:printHtmlPart@line 280,第1列。printHtmlPart(77)^1错误这两个变量来自哪里?我认为不需要将它们放在
${}之间
当整个方法调用已经在一组
${}
之间时。请尝试
${Application.findAllWhere((group1):group)}
。可能不需要
()
round
group1
也有。与问题无关-不要从GSP调用数据库。这不是PHP ffs。也得到了这个错误:不知道它为什么会改变。异常消息:启动失败:C_uu项目\u原型\u grails\u应用程序\u视图\u应用程序\u应用程序组合\u GSP:280:意外标记:printHtmlPart@line 280,column 1.printHtmlPart(77)^1错误这两个变量来自哪里?我认为当整个方法调用已经在一组
${}
之间时,不需要将它们放在
${}
之间。只需尝试
${Application.findAllWhere((group1):group)}
即可。可能不需要
()
round
group1
与问题无关-不要从GSP调用数据库。这不是PHP ffs。