2013-08-29 1 views
0

Я хочу показать значок в моем проекте для файла, который я загрузил, используя paperclip. Только тогда, когда расширение файла .pdf, то иконка должна показать pdf значок и так для другого расширения файла, то же самое происходит ..Как показать значок файла в рельсах

это мой код

<% @recent_files.each do |file| %> 
    <tr> 
     <td><%= image_tag file.resume(:thumb), :width => "100" if file.resume %></td> 
     <td><%#= @student.name%></td> 
     <td><%= file.resume_file_name%><br/> 
      <%= file.resume_updated_at%></td> 
    </tr> 
    <%end%> 

Может кто-нибудь мне помочь?

Заранее спасибо

+0

Пожалуйста, покажите свои первоначальные усилия. –

+0

почти забыть код :) нужен совет –

ответ

0
  1. Вы должны подготовить иконки для PDF и типов файлов вы бы ссылаться, поместите их в папку, как 'your_project/public/images/icons'
  2. Append конфигурационный хэш в модели File.rb:

    FileIcon = {

    : pdf => '/images/icons/pdf.png',

    : документ => '/images/icons/doc.png'

    # ... и другие любые типы файлов, все как этот

    }

  3. кода страницы, как это:

    <%= image_tag File::FileIcon[file.resume(:thumb).scan(/\.(\w+)\?\d*$/)[0].try(:to_sym)], :width => "100" if file.resume %>

+0

У меня есть ошибки «неопределенный метод' to_sym »для [" docx "]: Array" –

+0

попробуйте это: <% = image_tag Файл :: FileIcon [file.resume (: thumb) .scan (/ \. (\ w +) \? \ d * $ /) [0] [0] .try (: to_sym)],: width => "100", если file.resume%>. И если вы используете файл docx, не забудьте добавить: docx => '/images/icons/docx.png' в File :: FileIcon и поместить файл в папку –

+0

, я попробовал это, но ошибка все еще там –

Смежные вопросы