Grails:PrototypeJS lib添加一个额外的下划线(_)参数并将所有参数加倍

时间:2013-12-03 18:47:10

标签: grails prototypejs

我正在使用Grails 2.3.3原型作为我的js库。

我有一个ajax调用,它将一些参数发送到要绑定到对象的服务器。 生成的ajax调用始终在参数列表的末尾附加&_:。因此,不要使用此地图:[name:bar, action:save, controller:foo]我得到[name:bar, _:, action:save, controller:foo](请注意_:

当我尝试做的时候 foo.properties = params 我收到以下错误(在foo.errors上):

grails.validation.ValidationErrors: 1 errors
Error in object 'com.mypackage.Foo': codes []; arguments []; default message [String index out of range: 2]
End of error dump

如果我从参数地图中移除附加的_键(使用params.remove('_')),则不再有错误。

这里的问题是我的应用程序在Grails版本1.3.9上工作正常但是一旦我升级到2.3.3就停止工作。


升级原型库后,参数现在翻了一倍。

1 个答案:

答案 0 :(得分:0)

我知道这已经过时了,但每当这件事发生时,我都会不断回到这个问题。

像Geek Num 88所说,更新PrototypeJS可以解决发送到服务器的额外下划线参数。

由于PrototypeProvider.groovy中的错误,第二个问题正在发生,请参阅this pull request on github

您必须找到通常在

下的PrototypeProvider.groovy课程
<grails_home>/projects/<your_project>/plugins/prototype-1.0/src/groovy/grails/plugin/prototype/PrototypeProvider.groovy

<your project source directory>/target/plugins/prototype-1.0/src/groovy/grails/plugin/prototype/PrototypeProvider.groovy