ruby-on-rails - 最简单的文件服务方式 - Ruby on Rails

标签 ruby-on-rails

在 Rails 中提供文件的最简单方法是什么?

我的意思是:我想去,比方说,http://myserver.com/assets/arbitraryfile.arbitraryformat并让它在浏览器中加载 arbitraryfile.arbitraryformat,让浏览器决定是下载它还是显示它或其他任何东西。 (特别是我打算制作一个小书签,它从服务器调用一个 *.js 文件,然后加载一个 *.css 文件并从中下载一个字体 *.tty 文件。)

目前我有一个 assets 资源路由到一个 assets#show Action ,但我完全不确定如何编写我的 show.

最佳答案

您会将数据流式传输到浏览器,让它做任何它需要做的事情。您可以使用两种 rails 方法之一来获得您想要的:

a) 发送数据

foo_data = "This is my data"
send_data(foo_data, filename: "foo_file.txt")

b) send_file(允许您使用路径)

send_file("my_app/assets/public/pdf/my_pdf.pdf", type: "application/pdf")

查看 official doc .

关于ruby-on-rails - 最简单的文件服务方式 - Ruby on Rails,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38155998/

相关文章:

javascript - React-on-Rails,传递和格式化 props?

mysql - 使用 SQL 检索一组记录,然后使用 Rails 对它们进行排序

ruby-on-rails - 检索类和类实例的 "kind"

ruby-on-rails - Ruby on Rails 中的 Fields_for 方法

ruby-on-rails - 如何获取 ckeditor 资源以在 Rails 3.1 Assets 管道中编译和加载

ruby-on-rails - 让用户为自定义布局编写数据库存储的 CSS

ruby-on-rails - 如何在 ruby​​ 1.9.3/Rails 3.2.1 中安装 ruby​​-debug

ruby-on-rails - rails chartkick x 轴无标签只有 "..."

javascript - Rails ERB 内部 Javascript

javascript - 我如何将rails form_helper标签附加到html