Playframework 如何在Play Framework中设置DynamicForm数据的值

Playframework 如何在Play Framework中设置DynamicForm数据的值,playframework,dynamicform,Playframework,Dynamicform,我试图从缓存中获取窗体的以前的值,清除一个值,并使用除已清除值之外的所有以前的值呈现窗体 DynamicForm dform = (DynamicForm) Cache.get("dform"); Cache.set("dform",null,0); if (dform == null) { dform = new DynamicForm(); } else { dform.data().put("name",""); } return ok(myform.render(dform));

我试图从缓存中获取窗体的以前的值,清除一个值,并使用除已清除值之外的所有以前的值呈现窗体

DynamicForm dform = (DynamicForm) Cache.get("dform");
Cache.set("dform",null,0);
if (dform == null) {
  dform = new DynamicForm();
} else {
  dform.data().put("name","");
}
return ok(myform.render(dform));

除了
dform.data(),其他一切都正常工作。put(“name”,”)
不会更改name字段的值。为什么?如何设置该字段的值?

从播放2.1开始,您不能更改数据。如果要更改它,需要执行以下操作:

Map<String,String> data = dform.data();
data.put("name", "");
dform = new DynamicForm().fill(data);
Map data=dform.data();
data.put(“name”,“name”);
dform=新的DynamicForm().fill(数据);

祝你好运。

谢谢!就这样!