我会马上承认标题可能不是这里的正确引用,所以如果我使用了错误的短语,请告诉我,我会更正!
概述 - 我有一个 Form.gsp 和相应的 _form.gsp,我将来自 SQL 查询的大量值输入其中,其中包括来自另一个 Controller 的 ID(称为对象,多个对象链接到一个表单)。
在构建列出所有这些对象的表期间,我需要获取对象 ID,然后将其发送到对象 Controller ,使用 ID 返回对象名称并使用该值填充文本框。但我不知道如何做到这一点,这就是我尝试过的(当然是去掉垃圾)。
对象 ID 称为 object_id,而 g:each 变量是 item。所以我试图将它插入我的 Object.get(x) 为: -
value = "${Object.get(item.object_id)}"
但这给出了错误
No signature of method: static java.lang.Object.get() is applicable for argument types: (java.math.BigDecimal) values: [4]
顺便说一下,我需要寻找的 ID 值为 4...
我也试过
value = "${Object.get(${item.object_id})}"
但我得到一个
Unclosed GSP expression
错误。这是在我的 _form.gsp 中
<table id="eventList">
<g:each in="${results}" status = "i" var="item">
<tr>
<td colspan="3">
<table id = "sub">
<tr>
<td><b>Object</b></td><td>
<g:select style="width:550px;"id="objectID[$i]" name="objectID[$i].id" from="${framework.Object.list(sort:"objDesc")}" optionKey="id" required="" value="${item.object_id}" class="many-to-one"/>
<richui:autoComplete name="objectID[$i].id" value = "${Object.get(item.object_id)}" action="${createLinkTo('dir': 'object/searchAJAX')}" />
</td>
</tr>
</table>
</td>
</tr>
</g:each>
</table>
另外值得注意的是,我只是希望它返回并显示 objDesc 值而不是整个条目,并且不确定我如何告诉它基本上说“把 ID = item.object_ID 的 objDesc 还给我。
谢谢你的帮助!
最佳答案
我想出了一个解决方法,因为我在 Controller 中使用 SQL 将信息发送到 gsp 我简单地在另一个 JOIN 中添加到语句中,以便在我通过之前从对象表中获取对象描述值通过详细信息,我现在可以使用“item.object_description”来引用它
但是,我仍然想知道是否可以按照最初的预期进行查找,所以我不会将其标记为已回答...
关于jquery - Grails 在 g :each 内使用 get,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20002762/