这是 Play 2.1.1 的完整(但简单)表单示例。包括视图、控制器和路由文件。我怀疑您缺少导入和/或隐式请求。这两个都可以理解!
控制器(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
注意:HTML 视图中的名称属性必须与控制器表单中的字符串文字相匹配。
希望有帮助。