为什么在Grails3.3.3上重定向操作也传递HTML表单参数?

为什么在Grails3.3.3上重定向操作也传递HTML表单参数?,grails,grails-3.3,Grails,Grails 3.3,我有一个简单的GrailsWeb应用程序,其中有几个控制器。 Grails3.2.6的所有功能都很好,但升级到Grails3.3.3后,我注意到HTML表单post action上有一个奇怪的行为 例如,对于名为Subscriber的域对象,在编辑我在浏览器导航栏上看到的实例后: subscriber/show/16?_method=PUT&version=2&username=test[......] 控制器代码段(标准脚手架控制器)是 这是一个已经修复的bug,修复应该包含

我有一个简单的GrailsWeb应用程序,其中有几个控制器。 Grails3.2.6的所有功能都很好,但升级到Grails3.3.3后,我注意到HTML表单post action上有一个奇怪的行为

例如,对于名为Subscriber的域对象,在编辑我在浏览器导航栏上看到的实例后:

subscriber/show/16?_method=PUT&version=2&username=test[......]
控制器代码段(标准脚手架控制器)是


这是一个已经修复的bug,修复应该包含在Grails3.3.4中


请参阅。

这似乎是一个已知错误供您参考。。。我相信3.3.3是唯一一个有这种行为的版本。在3.3.2版本中,这个bug并不存在,但在3.3.4版本中,似乎又有人提出了这个问题:@Sarbyn同意了。我不认为StackOverflow是讨论罚单状态的合适论坛。请将对话转到我们的问题跟踪者处。
@Transactional
def update(Subscriber subscriber) {
    if (subscriber == null) {
        transactionStatus.setRollbackOnly()
        notFound()
        return
    }

    if (subscriber.hasErrors()) {
        transactionStatus.setRollbackOnly()
        respond subscriber.errors, view:'edit'
        return
    }

    subscriber.save(flush:true)

    request.withFormat {
        form multipartForm {
            flash.message = message(code: 'default.updated.message', args: [message(code: 'subscriber.label', default: 'Subscriber'), subscriber.id])
            redirect subscriber
        }
        '*'{ respond subscriber, [status: OK] }
    }
}