【问题标题】:Playframework 2.2 Form bind from request with filePlayframework 2.2 表单从请求与文件绑定
【发布时间】:2014-01-25 17:16:46
【问题描述】:

在 Playframework 2.2 中,可以像这样从请求中绑定实体:

Form<EntityA> form = form.bindFromRequest();
EntityA entity = filledForm.get();

它似乎适用于字符串值,但当我在实体中有一个文件并使用 @inputFile 表示法时,它似乎不起作用。

我可以像这样通过多部分表单数据读取文件:

MultipartFormData body = request().body().asMultipartFormData();
FilePart picture = body.getFile("uploadedFile");

但这并不优雅,因为我需要通过多部分表单数据读取文件,并通过 bindFromRequest 读取其他字段。

我想做这样的事情:

Form<EntityA> form = form.bindFromRequest();
EntityA entity = filledForm.get();
File file = entity.uploadedFile;

但当字段为文件时,只会返回 null。

我们如何将文件上传到表单中并直接从绑定的表单而不是多部分表单数据中获取?

谢谢。

【问题讨论】:

    标签: playframework playframework-2.2


    【解决方案1】:

    如果您的表单包含一个实体和一个文件,您可以使用以下方法解决它:How to get the upload file with other inputs in play2?

    如果您可以操作 POST 方法,请不要将 @inputFile 用于实体。否则,如果您要绑定的是 @inputFile 本身,则需要使用任何编组/解组方法。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-04-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多