我目前在grails视图中有这个在新窗口中打开pdf文件:
<a href="${resource(dir: 'userGuides', file: file.getValue())}" target="_blank"> ${file.getValue()}</a><br/><br/>
其中file.getValue()
是带扩展名的文件的名称。
这默认为grails-app / assets / userGuides的路径。我想更改它,以便从本地目的地打开文件,例如C:/ Users / user1 / userGuides /
我该如何更改?
答案 0 :(得分:1)
如果您使用的是grails 2.x,则可以在Config.groovy中配置目标目录
例如
grails.datapath.userguides =“C:/ Users / user1 / userGuides /”
如果您想根据环境进行配置,可以这样做:
development {
grails.datapath.userguides = "C:/Users/user1/userGuides/"
}
test {
grails.datapath.userguides = "C:/anotherDirectory/userGuides/"
}
production {
grails.datapath.userguides = "/var/www/${appName}/userGuides/"
}
然后定义一个控制器来访问您的文件,例如带有此操作的DocumentsController
def downloadUserGuide()
{
... // code to get your entity file that you use in your example to do
... // file.getValue()
String path = grailsApplication.config.grails.datapath.userguides
String label = ... // If you want to display another file name
render(contentType: "application/pdf", file: new File(path + file.getValue()), fileName: label)
}