无法在Rails公用文件夹中创建符号链接

时间:2012-09-20 21:33:18

标签: ruby-on-rails ruby-on-rails-3 asset-pipeline symlink assets

在我的Rails应用程序中,我想在public/中创建一个链接到另一个文件夹的符号链接。我可以创建符号链接并浏览它,但我似乎无法让Rails从中提供图像。有诀窍吗?它甚至可能吗?

我有一个包含数千个PNG的文件夹,我不想进入资产管道。如果有的话,他们很少会改变,所以管道在很大程想法?

lrwxr-xr-x  1 meltemi  staff   pages -> /Volumes/BigDisk/pages_root

但是当我尝试点击localhost:3000/pages/F-C2E-439_00002_1.png时,我得到了:

Routing Error

No route matches [GET] "/pages/F-C2E-439_00002_1.png"

1 个答案:

答案 0 :(得分:0)

您可以使用send_file来避免该路线错误,您将无法直接访问图像,但是可以使用辅助方法将其加载到视图中以执行以下操作:

send_file "#{Rails.root}path/to/your/image", type: 'image/jpeg', disposition: 'inline'

(对我而言)唯一的问题是,如果我必须发送3个以上的大图像(例如人们直接从手机上传的图像),则第一张图像将在iOS Safari浏览器中损坏,只有一半负载。