【问题标题】:Play Framework 2.5.x always get 'null' from template formPlay Framework 2.5.x 总是从模板表单中获取“null”
【发布时间】:2017-11-02 16:42:46
【问题描述】:

我是 Play 框架的新手。我试图开发一个简单的应用程序,有人可以输入他的名字和一个数字,这应该保存在一个哈希表中。

但是当我点击提交按钮时,我总是得到“null”作为值。

有人有想法吗?我经历了很多教程和东西,但我不能让它工作。即使是 play java 教程中表单的精确副本也不起作用。

这是我的代码:

HomeController.java

package controllers;

import play.mvc.*;
import java.util.*;
import models.User;
import play.data.Form;


public class HomeController extends Controller {

    Form<User> filledForm = Form.form(User.class);
    public Hashtable<Integer, String> hmap = new Hashtable<>();

    public Result index() {

        return ok(views.html.index.render());
    }

    public Result saveData() {


        User user = filledForm.bindFromRequest().get();

        if (filledForm.hasErrors()) {
            // process
        } else {
            // contactForm.get().firstName should be filled with the correct data
            System.out.println("Nothing to show here.");
        }


        System.out.println(user.name);
        System.out.println(user.tableNr);

        return ok(views.html.index.render());

    }


}

models.java

package models;

public class User {

    public String name;
    public String tableNr;

}

模板.html

@(labels: Hashtable[Integer, String])

...
...
...

<form action="@routes.HomeController.saveData()">
      <input type="text" name="name" />
      <input type="text" name="tableNr" />
      <button>Submit</button>
</form>

有人知道我错过了什么吗?

最好的问候

【问题讨论】:

    标签: java web-applications playframework


    【解决方案1】:

    在模板中定义表单:Form[HomeController:User]

    或者试试@(labels: Hashtable[String, String])

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-08-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-07-02
      • 1970-01-01
      相关资源
      最近更新 更多