Paperclip和Amazon S3如何做路径?
使用Amazon S3时如何使用回形针创建路径?
我的目录上的目录是:
/image/:id/:filename
我的模特:
has_attached_file :image, :storage => :s3, :bucket => 'mybucket', :s3_credentials => { :access_key_id => ENV['S3_KEY'], :secret_access_key => ENV['S3_SECRET'] }
试试这个:
has_attached_file :image, :storage => :s3, :bucket => 'mybucket', :path => "/image/:id/:filename", :s3_credentials => { :access_key_id => ENV['S3_KEY'], :secret_access_key => ENV['S3_SECRET'] }
几个月前我写了一篇关于它的post。 我还写过如何从类中添加属性,例如不使用id(我不喜欢它)并使用令牌代替。
在这里阅读post……
基础:
获取带有id的路径
has_attached_file :avatar, :styles => { :tiny => "48x48>", :preview => "175x175>", :large => "300x300>", :huge => "500x500>" }, :storage => :s3, :s3_credentials => "#{RAILS_ROOT}/config/s3.yml", :path => ":class/:attachment/:id/:style.:extension", :bucket => 'lopsum', :default_url => "/images/photo01.jpg"
而且,如果你想把它改成其他东西……
has_attached_file :avatar, :styles => { :tiny => "48x48>", :preview => "175x175>", :large => "300x300>", :huge => "500x500>" }, :storage => :s3, :s3_credentials => "#{RAILS_ROOT}/config/s3.yml", :path => ":class/:attachment/:token/:style.:extension", :bucket => 'lopsum', :default_url => "/images/photo01.jpg"
并在初始化程序中
Paperclip.interpolates :token do |attachment, style| attachment.instance.token end