提供资源文件夹和公用文件夹

时间:2016-07-04 10:05:10

标签: ruby-on-rails ruby ruby-on-rails-3 asset-pipeline static-files

Rails版本: Rails 3.2.15

Ruby版本: ruby​​ 1.9.3p551(2014-11-13修订版48407)

问题:

  

开发模式下的我的rails应用程序正在提供位于根级别的存储文件夹中的文件。文件格式为pdf和mp4。

     

通过服务我的意思是如果我直接点击路线例如:http://localhost:3000/assets/file_name.pdf没有抛出错误而是在浏览器上打开。

     

我想将这些文件置于身份验证之后,因此尝试将其置于 app / assets public / 文件夹之外。

     

我不确定为什么它能够提供这些目录之外的任何文件。以下是我的一些参考资料:

     

config.assets.enabled = true

     

config.assets.compress = false

     

config.assets.debug = true

请帮忙......

2 个答案:

答案 0 :(得分:0)

您必须在assets目录中有一个符号链接,管道中的设置,资产管道中的monkeypatch,或者更有可能,或者文件本身是“资产”控制器或路由。仔细看:))

答案 1 :(得分:0)

原来有一些代码,当您从 app / assets 访问文件时,也会将这些代码复制到 lib / assets 。因此,即使在从 app / assets 中删除资产后,它也会从 lib / assets

中提供一些文件。
  

2.2资产组织

     

管道资产可以放置在三个位置之一的应用程序内:app / assets,lib / assets或vendor / assets。

这是资产订购和组织的官方文件。