Grails g:选择自动完成

时间:2009-12-30 15:22:34

标签: grails yui

我已经将g:select字段更改为yui自动完成(不使用yui插件),现在我得到了:

Failed to convert property value of type [java.lang.String] to required type...  

println控制器中的参数在两种情况下看起来都相同。

我可以继续使用params中的String id并获取所需的域对象,但我想使用binder。

我猜它是binder的工作方式,但无法找到问题。

是否可以使用ID来绑定对象,如使用g:select?

时所做的那样

谢谢, 盖

1 个答案:

答案 0 :(得分:1)

问题是select的名称可能类似于 property.id ,Binder将尝试查找基于id的对象(这是一个int),这不能转换为一个字符串。

您可能需要更改name属性并使用 findByName 之类的内容编写代码以“取消引用”参数,以找到要分配的对象,即

def propValue = Lookup.findByName(params.propertyName);
objectInstance.property = propValue;

确保新名称与该类的现有属性不同,否则Binder将尝试将该字符串分配给该属性。除非是因为你的属性是一个字符串....

希望这有帮助。