Sha256: 2ab1150e79db202e98d00f9c8b8c6087c6074788a4491d6d7d5accf6e753579e

Contents?: true

Size: 1.58 KB

Versions: 46

Compression:

Stored size: 1.58 KB

Contents

Using With Rails 3
==================

Setting up the quick way
------------------------
config/initializers/dragonfly.rb:

    require 'dragonfly/rails/images'

Setting up the more explicit way
--------------------------------
You can do the above explicitly.

config/initializers/dragonfly.rb:

    require 'dragonfly'

    app = Dragonfly[:images]
    app.configure_with(:imagemagick)
    app.configure_with(:rails)

    app.define_macro(ActiveRecord::Base, :image_accessor)

application.rb:

    config.middleware.insert 0, 'Rack::Cache', {
      :verbose     => true,
      :metastore   => URI.encode("file:#{Rails.root}/tmp/dragonfly/cache/meta"),
      :entitystore => URI.encode("file:#{Rails.root}/tmp/dragonfly/cache/body")
    } # unless Rails.env.production?  ## uncomment this 'unless' in Rails 3.1,
                                      ## because it already inserts Rack::Cache in production
    
    config.middleware.insert_after 'Rack::Cache', 'Dragonfly::Middleware', :images

Gemfile
-------

    gem 'dragonfly', '~>0.9.12'
    gem 'rack-cache', :require => 'rack/cache'

Capistrano
----------
If using Capistrano with the above, you probably will want to keep the cache between deploys, so in deploy.rb:

    namespace :dragonfly do
      desc "Symlink the Rack::Cache files"
      task :symlink, :roles => [:app] do
        run "mkdir -p #{shared_path}/tmp/dragonfly && ln -nfs #{shared_path}/tmp/dragonfly #{release_path}/tmp/dragonfly"
      end
    end
    after 'deploy:update_code', 'dragonfly:symlink'

Use it!
-------

To see what you can do with the model accessors, see {file:Models}.

Version data entries

46 entries across 46 versions & 2 rubygems

Version Path
classiccms-0.7.5 vendor/bundle/gems/dragonfly-0.9.12/extra_docs/Rails3.md
classiccms-0.7.4 vendor/bundle/gems/dragonfly-0.9.12/extra_docs/Rails3.md
classiccms-0.7.3 vendor/bundle/gems/dragonfly-0.9.12/extra_docs/Rails3.md
classiccms-0.7.2 vendor/bundle/gems/dragonfly-0.9.12/extra_docs/Rails3.md
classiccms-0.7.1 vendor/bundle/gems/dragonfly-0.9.12/extra_docs/Rails3.md
classiccms-0.7.0 vendor/bundle/gems/dragonfly-0.9.12/extra_docs/Rails3.md
classiccms-0.6.9 vendor/bundle/gems/dragonfly-0.9.12/extra_docs/Rails3.md
classiccms-0.6.8 vendor/bundle/gems/dragonfly-0.9.12/extra_docs/Rails3.md
classiccms-0.6.7 vendor/bundle/gems/dragonfly-0.9.12/extra_docs/Rails3.md
classiccms-0.6.6 vendor/bundle/gems/dragonfly-0.9.12/extra_docs/Rails3.md
classiccms-0.6.5 vendor/bundle/gems/dragonfly-0.9.12/extra_docs/Rails3.md
classiccms-0.6.4 vendor/bundle/gems/dragonfly-0.9.12/extra_docs/Rails3.md
classiccms-0.6.3 vendor/bundle/gems/dragonfly-0.9.12/extra_docs/Rails3.md
classiccms-0.6.2 vendor/bundle/gems/dragonfly-0.9.12/extra_docs/Rails3.md
classiccms-0.6.1 vendor/bundle/gems/dragonfly-0.9.12/extra_docs/Rails3.md
classiccms-0.6.0 vendor/bundle/gems/dragonfly-0.9.12/extra_docs/Rails3.md
classiccms-0.5.17 vendor/bundle/gems/dragonfly-0.9.12/extra_docs/Rails3.md
classiccms-0.5.16 vendor/bundle/gems/dragonfly-0.9.12/extra_docs/Rails3.md
classiccms-0.5.15 vendor/bundle/gems/dragonfly-0.9.12/extra_docs/Rails3.md
classiccms-0.5.14 vendor/bundle/gems/dragonfly-0.9.12/extra_docs/Rails3.md