我正在使用 Play Framework (2.0.3),并且我有这种表单元素:
<input type="text" name="element-name" value="" />
服务器端,我有一个简单的 Form 类:
public class MyForm {
@Constraints.Required
public String elementName;
}
当然,它不起作用。
我怎样才能做到这一点?是否有注释表明与名称匹配?
我正在使用 Play Framework (2.0.3),并且我有这种表单元素:
<input type="text" name="element-name" value="" />
服务器端,我有一个简单的 Form 类:
public class MyForm {
@Constraints.Required
public String elementName;
}
当然,它不起作用。
我怎样才能做到这一点?是否有注释表明与名称匹配?
在 HTML 表单中使用相同的名称:
<input type="text" name="elementName" value="" />
String el = form().bindFromRequest().get("element-name");
AFAIK,这是不可能的。
我认为您可以使用DynamicForm并自己进行验证。
或者你可以尝试这样的事情(不知道它是否有效):
Map<String, String> elementNameAsMap = new HashMap<String, String>();
// find the HTML input value
elementNameAsMap.put("elementName", request().body().asFormUrlEncoded().get("element-name")[0]);
Form<MyForm> myForm = form(MyForm.class).bindFromRequest().bind(elementNameAsMap);