0
我是Play新玩家!所以我试图创建一个非常基本的发布请求,将用户输入到表单中的数据提取出来。但是,当我从窗体中拉出对象时,它的所有字段都是空的。例如。这是我写的叫做用户的基本类。Play框架bindFromRequest()方法返回空参数的对象
public class User{
public String email;
public String password;
}
简单。这是我在Controller中的新用户类。
public Result new_user() {
User user = Form.form(User.class).bindFromRequest().get();
System.out.println("Username: " + user.email);
System.out.println("Password: " + user.password);
return ok("This worked.");
}
我的路线文件:
GET / controllers.HomeController.start
POST /accounts/login controllers.HomeController.new_user()
最后,HTML表单:
<form action = "@routes.HomeController.new_user()" method = "post">
<input type="text" name="firstname">
<input type="text" name="lastname">
<button>Add Person</button>
</form>
我知道这不保存到数据库中,但我真的没有看到如果我甚至无法打印到控制台,请尝试一下。无论我输入什么内容,控制台基本上都会打印出“null”和“null”。我知道它确实创建了对象,因为打印用户将显示如下所示的内容:
[email protected]
但是这些字段未设置!我能做些什么才能做到这一点?
编辑:我应该提及的是,我检查了表单是否有任何错误,它返回了错误。
谢谢!我在前几天发现它,但事实上这是正确的解决方法。 – ajax992