我正在尝试在控制器上单击“提交”以读取输入字段数据。
我的login.scala.html
<form action="@routes.HomeController.email_auth()" method="post">
Enter your email address :<input type="text" name="username"> <br>
<input type="submit" value="Login">
</form>
将此添加到routes
,
POST /email_auth controllers.HomeController.email_auth
在HomeController
上阅读,
public Result email_auth() {
DynamicForm form = formFactory.form().bindFromRequest();
// if (form.data().size() == 0) {
// return badRequest("Expceting some data");
// } else {
String response = form.get("username");
System.out.println(response);
// }
return ok(email_auth.render());
}
此外,尝试渲染其他视图。如何使用Java
答案 0 :(得分:1)
我看到的第一件事是,您的路线被定义为GET请求,但是您发送带有邮政请求的表格。因此,Play不会找到您的路线,也不会按照您的要求选择其他路线。您的路线应如下所示:
POST /email_auth controllers.HomeController.email_auth
要渲染不同的视图,只需将其导入到Controller中,然后在return方法中调用其render方法。如果要渲染名为my_view.scala.html
的视图,则需要返回ok(my_view.render());
。
我也尝试了您的代码,参数被打印到控制台。因此,所需的电子邮件已保存到变量response
。