0

我在 grails 选择下拉列表中预选条目时遇到问题。我有一张桌子,每一行都有一个下拉菜单。

表中的行由 ag:each 定义:

<g:each in="${fooList}" status="i" var="fooInstance">

所以每一行都有这个对象的字段,我们就叫它Foo!

String name
String age
Bar xyz

问题出现在最后一列。该对象中有另一个对象(条 xyz)。我希望能够在当前的 Foo 中更改这个 Bar(它是一个域对象)。但是当页面加载时,Foo 中可能已经有一个 Bar。

如何将选择绑定到预填充的子对象?选择中包含子对象的可能值(所有栏当前可用),但绑定不起作用!

<td>${fieldValue(bean: fooInstance, field: "name")}</td> //this is fine

<td><g:select from="${Bar.list()}" name="xyz" 
optionValue="${fooInstance.xyz}" value="${fooInstance.xyz.id}" 
optionKey="id" noSelection="['':'-Choose a Bar-']" /></td>

有任何想法吗?希望这足够清楚,如果您需要任何其他信息,请告诉我,

谢谢,托尼

顺便说一句,我得到的堆栈跟踪是:

由 MissingMethodException 引起:没有方法签名:xxxxxxxxx.Bar.getAt() 适用于参数类型:(xxxxxxx.Bar) 值:[aaablahblah] 可能的解决方案:getAt(java.lang.String)、getAll()、getId( ), getAll([Ljava.lang.Long;), getAll(java.util.List), get(java.io.Serializable)

4

2 回答 2

0

每当我得到一个missingMethodException,我发现我需要停止服务器,清理项目,然后重新启动服务器。

于 2012-07-26T16:49:16.587 回答
0

查看select tag 的文档optionValue应该是显示在主体中的当前项目的属性,即显示SelectoptionValue="${{it.someProperty}}"哪里。itBar

那样有用吗?

于 2012-07-26T18:58:22.747 回答