现在用剪影实现文件上传。
从原来的
获得https://github.com/playframework/play-scala-fileupload-example/tree/2.5.x
剪影
https://github.com/mohiva/play-silhouette-seed/tree/4.0.0/app
我想用剪影修复def上传方法,以表明fileUpload2.scala.html中的身份(用户名),因此添加了以下行;
-Dsonar.cfamily.build-wrapper-output=bw-output
参考此链接;
http://grokbase.com/p/gg/play-framework/133pt061br/2-1-0-scala-action-question
但效果不佳。
(FileUploadController.scala)
silhouette.SecuredAction.async { implicit request =>
Future.successful(Ok(views.html.fileUpload2(request.identity,fileOption)))
}
问题是最后一行;
silhouette.SecuredAction.async {implicit request => Future.successful(OK(views.html.fileUpload2(request.identity,fileOption)))
编译错误;
缺少参数类型
发生。
答案 0 :(得分:2)
您在错误的地方使用Silhouette动作。你应该写:
def upload = silhouette.SecuredAction.async(parse.multipartFormData(handleFilePartAsFile)) {
implicit request =>
// Your upload code
}
Silhouette动作是一种默认的Play动作,其优点是使用身份和身份验证器扩展了请求类型。