首页 > 解决方案 > Grails 2.3.11 损坏的图像显示

问题描述

我制作了一个 Web 应用程序,用户的每个新条目都会在 grails-app/conf/templates/(user.id) 下创建一个文件夹

   def showImage(){
        def baseFolder = 'E:\\untitled1\\grails-app\\conf\\templates'
        def subFolder = baseFolder + '\\' + "${item.id}"
        def imageList1 = new File(subFolder).list()
        println imageList1
        def imageList = Arrays.asList(imageList1)
        println imageList
        [imageList: imageList]}

这里是我的 gsp

<g:each in="${imageList}" status="i" var="image">

<img src="${createLinkTo(dir: 'E:\\untitled1\\grails- app\\conf\\templates\\70' , file: "${i}.png")}" alt="${i}"/>
 </g:each>

我放了一个随机文件夹 70 以尝试示例,它显示正确的图像名称,如 0.png、1.png、2.png,但它显示损坏的图像符号

有任何想法吗 ?

标签: grailsgroovy

解决方案


createLinkTo()使用您的应用程序名称作为名称空间,仅此一项就无法正常工作。您的链接将以以下形式结束src="yourappname/E:..."

conf/此外,grails默认情况下不会向 web.xml 公开资源。将您的文件放在下面web-app/templates/并将其更改createLinkTocreateLinkTo(dir:'templates', file: "${i}.png")

请在描述中包含您的 grails 版本以及您使用的任何插件。


推荐阅读