图像URL定义

时间:2014-03-07 21:23:47

标签: ruby-on-rails ruby ruby-on-rails-3

Ruby on Rails 3.2

我的image_tag网址未正确返回。我一直在尝试Ruby Class:File的不同变体,但无法显示图像。我的可点击链接所有工作。

当我使用File.basename时,我得到http://x.x.x.x:3000/assets/gxp2140side.png 当我使用File.path时,我得到http://x.x.x.x:3000/assets/public/files/marketing/ip_voice/gxp2140/images/gxp2140side.png

File.path在加载图片时返回此错误。有没有可以用于数百个图像链接的路线?

No route matches [GET] "/assets/public/files/marketing/ip_voice/gxp2140/images/gxp2140side.png"

加载_files.html.erb

的控制器部分
base_dir = "public/files/marketing"
@files = Dir.glob("#{base_dir}/ip_voice/#{@filter}/#{@type.downcase}/*.[a-z]*")
@view = "files"

我的_files.html.erb

<% @images = [] %>
    <% @files.each do |file| %>
        <% if file.upcase.include?('.PNG') %>
        <%  @images << file %>
        <% end %>
    <% @images.each do |image| %>
        <tr>
          <td><%= link_to (image_tag File.basename(image)), image[/\/.*/] % </td> 
        </tr>
    <% end %>
            <tr>
          <td>
        <%= extension_image(File.basename(file)) %>
        <%= link_to File.basename(file).upcase, file[/\/.*/] %>
          </td>
        </tr>
    <% end %>

1 个答案:

答案 0 :(得分:0)

我对此并不完全了解。但是当我将图像文件放在assets/images文件夹中时,我的工作正常。

说我想访问assets/images/public/my_pic.jpg 我会使用像这样的网址:assets/public/my_pic.jpg

使用网址assets/images/foo.jpg

提交assets/foo.jpg

刚刚在Rails 3.2中测试