Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
3 changed files
with
73 additions
and
259 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,70 @@ | ||
h1. Description: | ||
|
||
Sample app using Rails 3, "carrierwave":https://github.com/jnicklas/carrierwave and "jquery-file-upload":https://github.com/blueimp/jQuery-File-Upload to upload and store files on Amazon S3. | ||
|
||
h1. Install: | ||
|
||
* Clone or fork the github repo | ||
* cd into app directory | ||
|
||
<pre> | ||
<code> | ||
$: bundle install #install required gems | ||
$: rake db:create:all #create dbs | ||
$: rake db:migrate #migrate db | ||
$: rails s #start app | ||
</code> | ||
</pre> | ||
|
||
h1. S3: | ||
|
||
Since this app stores files to amazon S3 you will need an "Amazon S3":http://aws.amazon.com/s3/ account, otherwise you can choose to store images on your local filesystem by editing the uploader: | ||
|
||
<pre> | ||
<code> | ||
#app/uploaders/image_uploader.rb | ||
# Choose what kind of storage to use for this uploader: | ||
storage :file #stores files locally | ||
# storage :fog #stores files on S3 | ||
</code> | ||
</pre> | ||
|
||
Amazon S3 support is made possibile by "Fog":https://github.com/geemus/fog ; you will need to tell carrierwave to use Amazons S3 by creating an initializer and providing your Amazon S3 authentication details: | ||
|
||
<pre> | ||
<code> | ||
#config/initializers/carrierwave.rb | ||
|
||
CarrierWave.configure do |config| | ||
config.fog_credentials = { | ||
:provider => 'AWS', # required | ||
:aws_access_key_id => 'amazon s3 access key', # required | ||
:aws_secret_access_key => 'amazon s3 secret access key', # required | ||
:region => 'us-west-1' # optional, defaults to 'us-east-1' | ||
} | ||
config.fog_directory = 'yourbucketname' # required | ||
config.fog_host = 'http://yourbucketname.s3.amazonaws.com/' # optional, defaults to nil | ||
config.fog_public = false # optional, defaults to true | ||
config.fog_attributes = {'Cache-Control'=>'max-age=315576000'} # optional, defaults to {} | ||
end | ||
</code> | ||
</pre> | ||
|
||
h1. Image Processing: | ||
|
||
App default for processing images is MiniMagick; if you want to use another library, just edit the Gemfile and modify the uploader accordingly to your choice: | ||
|
||
<pre> | ||
<code> | ||
#app/uploaders/image_uploader.rb | ||
# Include RMagick or ImageScience support: | ||
# include CarrierWave::RMagick | ||
include CarrierWave::ImageScience | ||
# include CarrierWave::MiniMagick | ||
</code> | ||
</pre> | ||
|
||
h1. TODO: | ||
|
||
* testing | ||
* better validation handling |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters