Play Framework 2.3.x外部资产/上传文件夹

时间:2015-03-11 18:17:57

标签: java scala playframework

我是新玩框架 - (Java版)。我们正在移植使用来自不同位置的资产文件夹的遗留应用程序。说...

资产位置

/home/user/other/asset/location/upload

播放位置

/home/user/some/play/location

在路线文件中,有......

GET  /assets/*file  controllers.Assets.at(path="/public", file)

GET  /upload/*file  controllers.Assets.at(path="/home/user/other/asset/location/upload", file)

在(SBT)build.sbt文件中......

unmanagedResourceDirectories in Assets += baseDirectory.value / "/home/user/other/asset/location/upload"

我这样使用......

public class AssetHelper
{
  public static final String ASSET = "/public";
  public static final String UPLOAD = "/home/user/other/asset/location/upload";
}

在用户个人资料视图中...

<img src="@routes.Assets.at(AssetHelper.UPLOAD,"userprofile/12345/profilepic/imgo.jpeg")" alt="SomeImage"/>

普通的CSS和javascript ...

<img class="logo" src="@routes.Assets.at(AssetHelper.ASSET,"dist/css/images/logo.png")" alt="LOGO">

我想要包含其他位置资产,我该怎么做?你能解释一下build.sbt给出的params,因为还不知道scala吗?

1 个答案:

答案 0 :(得分:1)

来自Play Framework核心的资产控制器只能提供捆绑在应用程序jar中的文件。如果要从文件系统返回静态文件,则必须编写自己的控制器。