繁体   English   中英

从表格中获取一个参数的最佳方法是什么(Play2 Framework)?

[英]What is the best way to get one param from form (Play2 Framework)?

我想创建一种用于通过一个参数(例如,名称)搜索记录的简单形式。 好像创建一个具有一个属性(名称)的类,而不是使用用于窗体的帮助器-并非最佳方法。 有什么例子我该如何从请求中获取POST数据并从该数据中获取属性值?

非常感谢您浪费时间。

您已经回答了自己的问题,我只想提供更多信息:

创建具有单个属性的类是正确的,但是请记住,可以在此类中使用验证批注(例如@Required@Email等)-因此,如果该属性后面有一些(超级)复杂逻辑这可能也是一个有价值的选择。

第二种解决方案是使用DynamicForm在没有真正备份提交表单的模型时使用它们。 它是这样的:

public static Result index() {
    DynamicForm requestData = Form.form().bindFromRequest();
    String name = requestData.get("name");
    return ok(name);
}

当然,获取值的第三个选项就像您提到的:

String name = request().body().asFormUrlEncoded().get("name")[0];

如果您不使用表单验证,则无需创建类。 相反,您可以使用$ .ajax()之类的AJAX函数,该函数将路由到您的特定controller函数。 此外,您可以从controller调用model函数,然后最后返回结果。 结果将被$ .ajax()函数捕获。

$.ajax
  type: "POST"
  url: url
  data: data
  success: success
  dataType: dataType

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM