5

ユーザーを登録するための非常に簡単なフォームを作成しました

<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エラーページでアドレスバーを選択してEnterキーを押すだけでも)、機能します。

私のコントローラーはこんな感じで、とてもシンプルです。

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

これが初心者の質問である場合は申し訳ありませんが、Grailsのドキュメント全体を調べたところ、なぜこれが発生しているのか理解できません。どんな助けでも大歓迎です。ありがとう。

4

1 に答える 1

6

g:actionSubmit にはパラメーター action="update" があり、そこにない UsersController def update にプッシュされるため、404 がスローされます。

action="update" を削除するか、そのアクションをコントローラーに追加できます。

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

代わりに使用できる ag:submitButton もあります。

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

于 2012-11-11T13:39:20.403 に答える