我正在使用播放!java项目上的framework 20,我在将表单传递给视图时遇到问题。
在控制器中,我有以下代码:
Filter filter = new Filter();
//add some state to the filter object
Form<Filter> filterForm = form(Filter.class).fill(filter);
Logger.info("FilterForm: " + filterForm.get().toString()); // So far so good
return ok(filterView.render(filterForm));
在模板中:
@filterForm.hasErrors() // renders false
@filterForm.data().isEmpty() // renders true!!
@* @filterForm.get().toString() *@ throws an Exception: No Value
如果在控制器中通过 Map 填充过滤器状态,我也会得到相同的错误:
filterForm = filterForm.bind(aMapWithTheState);
只有在代码中填充过滤器时才会出现这种行为。当我filterForm.bindFromRequest()
用其他方法做的时候一切正常。
谢谢!!