如何显示存储在S3亚马逊在rails应用程序中的pdf文件?RAILS S3显示存储在亚马逊S3的pdf文件
0
A
回答
0
上传文件到S3时文件名必须有没有空格或特殊字符。
要与空间使用以下
yourmodel.rb
class Video < ActiveRecord::Base
has_attached_file :video,
:path => ":rails_root/public/system/:attachment/:id/:style/:normalized_video_file_name",
:url => "/system/:attachment/:id/:style/:normalized_video_file_name"
Paperclip.interpolates :normalized_video_file_name do |attachment, style|
attachment.instance.normalized_video_file_name
end
def normalized_video_file_name
"#{self.id}-#{self.video_file_name.gsub(/[^a-zA-Z0-9_\.]/, '_')}"
end
end
什么是我们在这里做上传文件?很简单,在has_attached_file中,我们编辑paperclip默认返回路径和url的方式,这是保存和加载文件以显示它时最相关的组件。回形针默认值是:前面有
path default => ":rails_root/public/system/:attachment/:id/:style/:filename"
url default => "/system/:attachment/:id/:style/:filename"
价值观 ':' 是标准的插值回形针有
http://blog.wyeworks.com/2009/7/13/paperclip-file-rename
0
你需要一个补充:s3_headers进入您的has_attachment行:
has_attached_file :asset,
:storage => :s3,
:s3_credentials => "#{RAILS_ROOT}/config/s3.yml",
:path => "uploads/:id/:basename.:extension",
:s3_headers => {"Content-Disposition" => "attachment"},
:s3_permissions => 'authenticated-read',
:s3_protocol => "http",
:bucket => "my_bucket_or_something"
相关问题
- 1. 亚马逊S3存储敏感文件
- 2. 亚马逊S3虾PDF
- 3. 如何将虾PDF文件存储到亚马逊S3
- 4. Rails和亚马逊S3
- 5. 亚马逊S3缓存音频文件
- 6. php亚马逊s3存储桶创建
- 7. 保护亚马逊S3存储
- 8. 亚马逊S3 - 存储桶策略
- 9. Android亚马逊s3存储桶
- 10. S3亚马逊域
- 11. FileNotFoundException亚马逊S3
- 12. 从亚马逊S3生成URL(来自亚马逊S3的流媒体文件)
- 13. 亚马逊S3说法斗不存在
- 14. 在S3上合并文件亚马逊
- 15. 在亚马逊S3上增长文件
- 16. lighttpd在亚马逊s3
- 17. 隐私在亚马逊S3
- 18. 亚马逊S3图像
- 19. 解压亚马逊S3中的文件
- 20. 亚马逊S3中的重复文件
- 21. Multiupload - Carriervawe,Rails的,亚马逊S3
- 22. 将本地存储的文件移动到亚马逊S3
- 23. 更新亚马逊S3存储桶中的文件
- 24. Rails 4,回形针,亚马逊S3配置亚马逊路径
- 25. Carrierwave - 配置亚马逊S3
- 26. Android的亚马逊S3 TransferUtility
- 27. 亚马逊S3上的file_exists
- 28. 亚马逊S3上的Presto
- 29. 上传文件到亚马逊s3
- 30. 亚马逊s3上传文件超时