Листинг / ссылка на содержимое каталога в Rails - PullRequest
8 голосов
/ 27 апреля 2011

У меня есть набор статических PDF-файлов. Я хочу перечислить их на странице рельсов со ссылками на них.

Сейчас мне нужно как обрезать / public с начала пути, чтобы ссылка действительно работала.

Текущий код:

<h1>Listing letters</h1>
<table>
<ul>
<% @files = Dir.glob("public/files/*.pdf") %>
<% for file in @files %>
<% new_file = file.to_s %>
<% new_file = new_file.chomp("public/") %>
<li><%= link_to 'Letter', new_file %></li>
<% end %>
</ul>
</table>

Однако ссылки все еще приходят как

http://localhost:3000/public/files/document.pdf

когда на работу они должны быть

http://localhost:3000/files/document.pdf

Ответы [ 2 ]

6 голосов
/ 27 апреля 2011
<% Dir["public/files/*.pdf"].each do |file| %>
  <li><%= link_to 'Letter', file[/\/.*/] %></li>
<% end %>
3 голосов
/ 27 апреля 2011

Метод chomp используется для удаления чего-то на конце строки;) Вместо этого используйте gsub.

new_file.gsub!('public', '')

или

new_file = new_file.gsub('public', '')
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...