Grails表单提交原因404

时间:2012-11-11 12:55:17

标签: grails

我创建了一个非常简单的注册用户表单

<g:form name="signupForm" url="[controller:'users', action:'signup']">
  <g:textField name="username" placeholder="Username" />
  <g:passwordField name="password" placeholder="Password" />
  <g:textField name="email" placeholder="Email" />
  <g:actionSubmit class="right" value="Signup" action="update" />
</g:form>

当我点击提交按钮时,我收到404错误The requested resource is not available.但是,如果我手动导航到完全相同的URL(或者甚至只是选择404错误页面上的地址栏并按回车键),那么它可以正常工作!

我的控制器看起来像这样,非常简单。

class UsersController {
    def signup() {
        render "Hello World"
    }
}

很抱歉,如果这是一个菜鸟问题,但我已经查看了Grails文档,并且无法弄清楚为什么会这样。任何帮助非常感谢。感谢。

1 个答案:

答案 0 :(得分:6)

g:actionSubmit有参数action =“update”,它将把它推送到那个不存在的UsersController def更新,因此它会抛出404.

您可以删除action =“update”或将该操作添加到控制器。

http://grails.org/doc/latest/ref/Tags/actionSubmit.html

还可以使用g:submitButton代替。

http://grails.org/doc/latest/ref/Tags/submitButton.html