2012-07-02 2 views
1

У меня есть область на моем сайте, где пользователь может загружать файлы на сервер. Файлы не ограничены типом файла. Все работает в Firefox и т. Д., Но сафари пытается открыть файл в новом окне, что приводит к тарабарщину для типов файлов, которые он не понимает. Я могу «сохранить связанный файл», и все работает нормально. Однако для удобства использования я хочу, чтобы файл загружался автоматически при нажатии ссылки. Я использовал несущую для загрузки файлов.Rails 3.2 link_to Файл в Safari

Вот что моя ссылка выглядит

<%= link_to document.name,"#{document.file}"%> 
+1

[Установка типа содержимого] (https://github.com/jnicklas/carrierwave#setting-the -content-type) может решить проблему. – Stefan

+0

@Stefan Могу ли я установить его content_disposition в фактической декларации ссылки? – ctilley79

+0

Нет, 'link_to' просто создает ссылку. Вы можете написать свой собственный помощник 'download_link_to', используя метод' send_file' @gabrielhilal. – Stefan

ответ

0

@Stefan ответил на это в комментариях.

в Gemfile:

gem 'mime-types' 

в файле загрузчика генерируемой carrierwave:

require 'carrierwave/processing/mime_types' 

class MyUploader < CarrierWave::Uploader::Base 
    include CarrierWave::MimeTypes 

    process :set_content_type 
end