ここでは、Play 2.1.1の完全な(ただし単純な)フォームの例を示します。ビュー、コントローラ、ルートファイルを含む。私はあなたがmissing importsおよび/またはimplicit requestと思われます。どちらも理解できるだろう!
コントローラ(Application.scala):
package controllers
import play.api._
import play.api.mvc._
import play.api.data._
import play.api.data.Forms._
object Application extends Controller {
val form = Form(
tuple(
"firstname" -> text,
"lastname" -> text
)
)
def index = Action {
Ok(views.html.index())
}
def submit = Action { implicit request =>
val (fname, lname) = form.bindFromRequest.get
Ok("Hi %s %s".format(fname, lname))
}
}
ビュー(index.scala.html):
<!DOCTYPE html>
<html>
<head>
<title>Form example</title>
</head>
<body>
<form method="post" autocomplete="on">
First name:<input type="text" name="firstname"><br>
Last name: <input type="text" name="lastname"><br>
<input type="submit">
</form>
</body>
</html>
および経路:
GET / controllers.Application.index
POST / controllers.Application.submit
NB: HTMLビューの名前属性は、コントローラフォームの文字列リテラルと一致する必要があります。
希望があれば
場合によってはscala.textをインポートしていますか?それを削除し、@マットロボットの下の答えとして適切なインポートを追加すると、あなたの問題を解決するはずです。 – binshi