ruby-on-rails - Rails 5 破坏了 send_file 方法?

标签 ruby-on-rails download mime-types

我最近将我的应用程序升级到 Rails 5,但我的下载停止工作。当我单击下载按钮时,浏览器挂起,没有任何 react 。

class DownloadsController < ApplicationController
  def download
    send_file(
      "#{Rails.root}/public/file.rtf",
      filename: "file.rtf",
      type: :rtf,
      disposition: "attachment"
    )
  end
end

我有 rtf mimetype
Mime::Type.register "text/richtext", :rtf

日志显示一切正常
Sent file /home/deploy/app/releases/20160518213049/public/file.rtf (0.4ms)
I, [2016-05-18T17:34:48.435946 #20202]  INFO -- : [d02e8ea3-53da-440d-b3b1-cc6bfd6524dc] Completed 200 OK in 17ms (ActiveRecord: 4.4ms)

最佳答案

正如上面评论中详述的那样,解决方案是禁用link_to的turbolinks。对于 Turbolinks 5,这可以做到,如 here 所述通过使用 data-turbolinks="false"

<%= link_to "Foo", new_foo_path(@foo), data: { turbolinks: false } %>

关于ruby-on-rails - Rails 5 破坏了 send_file 方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37310574/

相关文章:

ruby-on-rails - ActionView::MissTemplate 即使模板存在

html - 尝试向数据库图像添加线性渐变,我可以在 css 上使用数据库图像吗?

ruby-on-rails - `<module:Rails>' : superclass mismatch for class Server (TypeError)

ios - 解析 iOS 中图像下载的多部分响应

javascript - 如何强制下载而不是使用 Javascript/jQuery 从 FTP 服务器在 Chrome 中打开 srt 文件?

java - 如何为 mule 入站端点指定超过 1 个内容类型

ruby-on-rails - 查找用户联系人或将其与 Facebook 好友匹配的最佳方式?

Java : download file outside server context

javascript - 根据 mimetype 按类型对文件进行排序的最佳方法

Git 的内存使用情况