繁体   English   中英

如何在Grails中显示由Uploader插件上传的图像

[英]How to show images uploaded by uploadr plugin in Grails

我是Grails的新手。 我正在使用上载器插件上载图像。 上传图像效果很好。 我的图像成功上传到我的目录中。

现在,我也想在show.gsp文件中显示这些图像。 但是我对此一无所知。 这是我的上载者标签:

<uploadr:add name="fileupload" path="C:/Users/Shreshtt/workspace/groovypublish/grails-app/uploader" direction="up" maxVisible="8" unsupported="/uploadr/upload/warning" rating="true" voting="true" colorPicker="true" maxSize="0" />

也看这个演示 ..

如何在视图页面中显示这些图像。 请帮忙。

您应该在应用中使用如下路径:

<uploadr:add name="ComonUp10" path="uploadFile/"  direction="up" maxVisible="8" unsupported="/my/controller/action" rating="true" voting="true" colorPicker="true" maxSize="204800000" />

这里的uploadFile /将是您的grails应用程序中web-app目录内的文件夹。

然后您将能够看到已经上传的文件,如下所示:

<% def path = new File("uploadFile/") %>
<uploadr:add name="mySecondUploadr" path="${path}" direction="up" maxVisible="5" unsupported="${createLink(plugin: 'uploadr', controller: 'upload', action: 'warning')}">
<% path.listFiles().each { file -> %>
    <uploadr:file name="${file.name}">
        <uploadr:fileSize>${file.size()}</uploadr:fileSize>
        <uploadr:fileModified>${file.lastModified()}</uploadr:fileModified>
        <uploadr:fileId>myId-${RandomStringUtils.random(32, true, true)}</uploadr:fileId>
    </uploadr:file>
<% } %>
</uploadr:add>

为了显示没有上传者上传到该目录中的图像,您可以在GSP页面上添加图像标签,如下所示:

<img class="" src="${resource(dir:'uploadFile',file:'your-image.jpg')}"  />

您可以在每个循环中添加图像,然后将它们变成我的一个:

<g:each in="imageContainingList" var="oneRowObject">
   <img class="" src='${resource(dir:"uploadFile", file:"${oneRowObject.imageFile}.jpg")}'  />

</g:each>

或者,如果您要列出uploadFile文件夹中的所有图像,则可以尝试:

您必须在控制器中收集所有图像名称,将它们传递到视图并使用grails image标签显示它们。

要收集所有图像名称,您需要使用grails应用程序的路径:

def showImageGalleryControllerFunction(){
    def imageDir = grailsAttributes.getApplicationContext().getResource("/uploadFile/").getFile().toString()

   //Collect image names

    def images = []
    new File(imageDir).eachFileMatch (~/.*.png/) { file ->
        images << file.getName()
    }

   [images:images]
}

并在showImageGalleryControllerFunction.gsp文件中:

<g:each in="${images}" var="image">
    <g:img dir="images" file="$image" />
</g:each>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM