因此,控制器将Race对象/模型列表返回给视图。
def addquestion(Long id){
def event = CompositeEvent.get(id)
[races: event.races]
}
唯一值得注意的是,这些Race模型有一个属性" name"。因此,我想在选择下拉框中填写比赛名称,但我很难按照文档进行操作,所以我来到这里是为了得到专家的帮助。这是我做的,但我没有得到填充的名称,但类型。
<g:select name="asd" from="${races}" value="1" optionKey="name" />
我的理解是from属性是我应该指向的模型或列表,在我的情况下是#34;比赛&#34;因为这是传递给视图的Race对象列表,而optionKey是指向要打印的对象属性的属性。我感谢任何帮助!谢谢!
答案 0 :(得分:3)
根据docs g:select
有两个属性optionKey
和optionValue
,结果如下:
<select name="{selectName}">
<option value="{optionKey}">{optionValue}</option>
<option value="{optionKey}">{optionValue}</option>
<option value="{optionKey}">{optionValue}</option>
</select>
我没有填充名称但是类型
因为您没有设置optionValue
,所以会发生默认的toString()
表示,这似乎就是您所说的&#34;类型&#34;。以下代码应该按照您的要求执行:
<g:select name="races" from="${races}" value="1" optionKey="id" optionValue="name" />