2

値を含むフォームを表示しようとしていますが、うまくいきません。

私の行動:

public static Result login() {
    User user = new User();
    user.name = "Murilo";

    Form<User> userForm = form(User.class);

    return ok(login.render(userForm.fill(user)));
}

そして私のhtml:

@(myForm : play.data.Form[models.User])

<!DOCTYPE html>
<html>
<head>
</head>
<body>
     @helper.inputText(myForm("name"))
</body>
</html>

しかし、アクセスすると、次のエラーがスローされます。

type mismatch; found : play.data.Form.Field required: play.api.data.Field
4

2 に答える 2

3

nico_ekitoの良い答えに加えて@helper..、フォームが大きくなり始めると(フィールドが増えると)長くて読みにくくなるため、通常は使用しません。だから私は次のことをします:

@(editForm:Form[User]

@*** IMPORTS ****@
@import helper._

@form(routes.Tasks.save(), 'class -> "form-horizontal") {
     @inputText(editForm:Form("description()").....)
     @inputArea(editForm:Form("description()").....)
}
于 2012-07-27T15:53:05.780 に答える
3

テンプレートでは、次のようになります。

@(myForm : Form[User])

<!DOCTYPE html>
<html>
<head>
</head>
<body>
     @helper.inputText(myForm("name"))
</body>
</html>
于 2012-07-27T05:58:23.387 に答える