我是新玩框架 - (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吗?
答案 0 :(得分:1)
来自Play Framework核心的资产控制器只能提供捆绑在应用程序jar中的文件。如果要从文件系统返回静态文件,则必须编写自己的控制器。