@inputText(
signupForm("email"), '_label -> "Email",
'_help -> "Enter a valid email address."
)
これを純粋なhtmlでどのように記述しますか?
bindfromRequest()
コントローラーで(htmlで)使用できるように、signupFormに値を追加する方法がわかりません
編集:
私は通常、このアプローチを使用しました
final static Form<User> signupForm = form(User.class);
そして製本工程
Form<User> filledForm = signupForm.bindFromRequest();
レンダリングされたフォームは次のようになります。
<div class="control-group ">
<label class="control-label" for="email">Email</label>
<div class="controls">
<input type="text" id="email" name="email" value="" >
<span class="help-inline"></span>
</div>
</div>
そして、これは私にとってはうまくいきました.純粋なhtmlを使用する方法に興味があったので、独自の小さなヘルパーを作成できました.
編集2:
public static Result blank() {
return ok(form.render(signupForm));
}
そしてテンプレート自体で
@(signupForm: Form[User])
編集3:
これが役立つかどうかはわかりませんが、ヘルパーは次のようになります。(inputtext について) これが何を意味するのかさっぱりわかりません。
@(field: play.api.data.Field, args: (Symbol,Any)*)(implicit handler: FieldConstructor, lang: play.api.i18n.Lang)
@input(field, args:_*) { (id, name, value, htmlArgs) =>
<input type="text" id="@id" name="@name" value="@value" @toHtmlArgs(htmlArgs)>
}