This gem allows you to use UpYun Storage as storage engine for paperclip
gem install upyun-paperclip
Using paperclip's master branch since this issue is fixed in it.
gem "paperclip", :git => 'git://github.com/thoughtbot/paperclip.git'
gem "upyun-paperclip", :git => 'git://github.com/frankel/upyun-paperclip.git'
If you have a model named User, then you can set options like this.
class User < ActiveRecord::Base
has_attached_file :avatar,
{
:storage => :upyun,
# Please set these four options found in your upyun account.
:upyun_bucketname => 'bucketname',
:upyun_username => 'username',
:upyun_password => 'password',
:upyun_domain => 'domain',
# Set any other options according to paperclip
:styles => { :medium => "300x300>", :thumb => "100x100>" }
}
end
If you have more than one model to use paperclip, and feel bored to set the same options for each one, you can create a file named paperclip.rb
under config\initializers
folder, and write code like this:
Paperclip::Storage::Upyun::Config = {
:upyun_bucketname => 'bucketname',
:upyun_username => 'username',
:upyun_password => 'password',
:upyun_domain => 'domain'
}
and only set :storage => :upyun
in each models.