Grails 标签 actionSubmit 导致 404 错误
Grails tag actionSubmit causes 404 error
我使用的是 grails 标签 form
和 actionSubmit
,提交时出现 404 错误(我使用的是 Grails 2.3.7)。
正在查看 write.gsp
:
<g:form action="send">
<g:actionSubmit value="test1"/>
<input type="submit" value="test2"/>
</g:form>
并且在呈现视图时,结果为:
<form method="post" action="/messaging/send">
<input type="submit" value="test1" name="_action_test1">
<input type="submit" value="test2">
</form>
在控制器处:
class MessagingController {
def send = {
//some code here
chain(action:"read")
}
def read = {
// more working code
}
}
因此,如果我单击按钮 test2,它会工作并且呈现 "read" 视图,但是如果我单击 test1 按钮,我得到:
HTTP Status 404 - /messaging/send
type Status report
message /messaging/send
description The requested resource is not available.
为什么 actionSubmit 无法正常工作?
我怀疑这与自动生成的 name="_action_test1"
有关,因为如果我删除下划线(即使用 firebug)它会起作用。
但是根据 Grails 文档,标签的使用是正确的:
http://grails.github.io/grails-doc/2.3.7/ref/Tags/actionSubmit.html
我认为您缺少 actionSubmit 中的操作字段:
<!--label derived from message bundle-->
<g:actionSubmit value="${message(code:'label.update')}" action="Update" />
<g:actionSubmit value="test1" action="test1"/>
最近在直接从生成的 grails 代码中提取的插件中使用了它:https://github.com/vahidhedayati/jssh/blob/master/grails-app/views/jsshadmin/_edit.gsp 对我来说效果很好
我使用的是 grails 标签 form
和 actionSubmit
,提交时出现 404 错误(我使用的是 Grails 2.3.7)。
正在查看 write.gsp
:
<g:form action="send">
<g:actionSubmit value="test1"/>
<input type="submit" value="test2"/>
</g:form>
并且在呈现视图时,结果为:
<form method="post" action="/messaging/send">
<input type="submit" value="test1" name="_action_test1">
<input type="submit" value="test2">
</form>
在控制器处:
class MessagingController {
def send = {
//some code here
chain(action:"read")
}
def read = {
// more working code
}
}
因此,如果我单击按钮 test2,它会工作并且呈现 "read" 视图,但是如果我单击 test1 按钮,我得到:
HTTP Status 404 - /messaging/send
type Status report
message /messaging/send
description The requested resource is not available.
为什么 actionSubmit 无法正常工作?
我怀疑这与自动生成的 name="_action_test1"
有关,因为如果我删除下划线(即使用 firebug)它会起作用。
但是根据 Grails 文档,标签的使用是正确的:
http://grails.github.io/grails-doc/2.3.7/ref/Tags/actionSubmit.html
我认为您缺少 actionSubmit 中的操作字段:
<!--label derived from message bundle-->
<g:actionSubmit value="${message(code:'label.update')}" action="Update" />
<g:actionSubmit value="test1" action="test1"/>
最近在直接从生成的 grails 代码中提取的插件中使用了它:https://github.com/vahidhedayati/jssh/blob/master/grails-app/views/jsshadmin/_edit.gsp 对我来说效果很好