У меня есть вложение файла PDF, сохраненное в облаке. Файл прикреплен с помощью attachment_fu. Все, что я сделать, чтобы отобразить его в представлении является:Показать файл pdf inline в приложении Rails
<%= image_tag @model.pdf_attachment.public_filename %>
Когда я загрузить страницу с этим кодом в браузере, это то, что я хочу: он отображает прикрепленный файл PDF.
Но только на Mac.
В Windows браузеры будут отображать сломанное изображение. Отчет об инструментах разработчика Chrome: «Ресурс интерпретируется как изображение, но передается с помощью приложения типа MIME/pdf».
Я также попытался отправки файла из контроллера:
в PdfAttachmentsController:
def send_pdf_attachment
pdf_attachment = PdfAttachment.find params[:id]
send_file pdf_attachment.public_filename,
:type => pdf_attachment.content_type,
:file_name => pdf_attachment.filename,
:disposition => 'inline'
end
в routes.rb:
map.send_pdf_attachment '/pdf_attachments/send_pdf_attachment/:id',
:controller => 'pdf_attachments',
:action => 'send_pdf_attachment'
и в представлении:
<%= send_pdf_attachment_path @model.pdf_attachment %>
or
<%= image_tag(send_pdf_attachment_path @model.pdf_attachment) %>
И это не отображает файл на Mac (я не пробовал на Windows), он отображает путь:
pdf_attachments/send_pdf_attachment/35
Что мне делать, чтобы правильно отображать PDF-файл инлайн?
Привет, Хронос, спасибо за подсказку. Допустим, я не знал о
Я прыгнул с пистолета, Chrome хорош, он только обрабатывает настройки ширины и высоты по-разному, учитывая настройки родительского контейнера (FF по-прежнему хочет сохранить файл ...). Как только я смогу, я попробую Windows. – Arta
Да,