我试图在我的 application.conf 文件中指定 attachments.path 属性,但这没有任何效果。
在 play 2.0.1 的文档中,我没有找到任何解释如何更改上传文件目录的内容。
我错过了什么吗?
我试图在我的 application.conf 文件中指定 attachments.path 属性,但这没有任何效果。
在 play 2.0.1 的文档中,我没有找到任何解释如何更改上传文件目录的内容。
我错过了什么吗?
虽然没有这样的变量,application.conf
但您可以轻松地添加它并在您的方法中使用。随心所欲地调用它,即:
新行application.conf
:
myUploadPath = "/home/your-account/some/custom/upload/folder/"
根据文档样本:
public static Result upload() {
MultipartFormData body = request().body().asMultipartFormData();
MultipartFormData.FilePart picture = body.getFile("picture");
if (picture != null) {
String fileName = picture.getFilename();
String contentType = picture.getContentType();
File file = picture.getFile();
// added lines
String myUploadPath = Play.application().configuration().getString("myUploadPath");
file.renameTo(new File(myUploadPath, fileName));
return ok("file saved as " + myUploadPath + fileName);
} else {
flash("error", "Missing file");
return redirect(routes.Application.uploadform());
}
}
使用这种方法,您可以甚至应该filename clash
在重命名之前执行检查,以防止随机覆盖。