Java 播放2-格式->;目标
我对游戏2中的表单有问题 型号:Java 播放2-格式->;目标,java,playframework-2.0,morphia,objectid,Java,Playframework 2.0,Morphia,Objectid,我对游戏2中的表单有问题 型号: @Id private ObjectId id; 形式 这是objectid的正确构造函数。如您所见,这是我的解决方法,我不使用guideForm.bindFromRequest()我只需要直接绑定它 这感觉有点不舒服。是我可以使用普通绑定的解决方案吗 Form<Myclass> guideForm = form(Myclass.class); Form<Myclass> filledForm = guideForm.bindFromR
@Id private ObjectId id;
形式
这是objectid的正确构造函数。如您所见,这是我的解决方法,我不使用guideForm.bindFromRequest()代码>我只需要直接绑定它
这感觉有点不舒服。是我可以使用普通绑定的解决方案吗
Form<Myclass> guideForm = form(Myclass.class);
Form<Myclass> filledForm = guideForm.bindFromRequest();
formguideform=Form(Myclass.class);
Form filledForm=guideForm.bindFromRequest();
尝试在的onStart()中注册自定义DataBinder:
Formatters.register(ObjectId.class,新的SimpleFormatter(){
@凌驾
公共ObjectId解析(字符串输入,语言环境l)引发ParseException{
return…;//从表单的输入创建对象
}
@凌驾
公共字符串打印(ObjectId ObjectId,Locale l){
返回字符串.valueOf(objectId.id);
}
});
该文件可在本页末尾找到:
ObjectId id = new ObjectId(form().bindFromRequest().get("id"));
Form<Myclass> guideForm = form(Myclass.class);
Form<Myclass> filledForm = guideForm.bindFromRequest();
Formatters.register(ObjectId.class, new SimpleFormatter<ObjectId>() {
@Override
public ObjectId parse(String input, Locale l) throws ParseException {
return ...; // create the object from the input of the form
}
@Override
public String print(ObjectId objectId, Locale l) {
return String.valueOf(objectId.id);
}
});