Skip to content

Instantly share code, notes, and snippets.

@pcg79
Created October 23, 2009 01:49
Show Gist options
  • Save pcg79/216541 to your computer and use it in GitHub Desktop.
Save pcg79/216541 to your computer and use it in GitHub Desktop.
movie.rb:
# With help from
# http://almosteffortless.com/2008/12/11/easy-upload-via-url-with-paperclip/
has_attached_file :poster,
:styles => {
:small => "150x150>"
}
def download_remote_image
self.poster = do_download_remote_image
self.poster_remote_url = poster_url
end
def do_download_remote_image
io = open(URI.parse(poster_url))
def io.original_filename; base_uri.path.split('/').last; end
io.original_filename.blank? ? nil : io
rescue Exception => e # catch url errors with validations instead of exceptions (Errno::ENOENT, OpenURI::HTTPError, etc...)
end
Error:
/u/apps/moviealerts/releases/20091023004008/vendor/rails/activesupport/lib/active_support/core_ext/kernel/agnostics.rb:7:in ``': Too many open files - identify -format "%wx%h" "/tmp/stream20091022-15497-1flixnx-0"[0] 2>/dev/null (Errno::EMFILE)
from /u/apps/moviealerts/releases/20091023004008/vendor/rails/activesupport/lib/active_support/core_ext/kernel/agnostics.rb:7:in ``'
from /u/apps/moviealerts/releases/20091023004008/vendor/plugins/paperclip/lib/paperclip.rb:100:in `run'
from /u/apps/moviealerts/releases/20091023004008/vendor/plugins/paperclip/lib/paperclip/geometry.rb:19:in `from_file'
from /u/apps/moviealerts/releases/20091023004008/vendor/plugins/paperclip/lib/paperclip/thumbnail.rb:19:in `initialize'
from /u/apps/moviealerts/releases/20091023004008/vendor/plugins/paperclip/lib/paperclip/processor.rb:33:in `new'
from /u/apps/moviealerts/releases/20091023004008/vendor/plugins/paperclip/lib/paperclip/processor.rb:33:in `make'
from /u/apps/moviealerts/releases/20091023004008/vendor/plugins/paperclip/lib/paperclip/attachment.rb:382:in `post_process_styles'
from /usr/local/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `inject'
from /u/apps/moviealerts/releases/20091023004008/vendor/plugins/paperclip/lib/paperclip/attachment.rb:381:in `each'
from /u/apps/moviealerts/releases/20091023004008/vendor/plugins/paperclip/lib/paperclip/attachment.rb:381:in `inject'
from /u/apps/moviealerts/releases/20091023004008/vendor/plugins/paperclip/lib/paperclip/attachment.rb:381:in `post_process_styles'
from /u/apps/moviealerts/releases/20091023004008/vendor/plugins/paperclip/lib/paperclip/attachment.rb:378:in `each'
from /u/apps/moviealerts/releases/20091023004008/vendor/plugins/paperclip/lib/paperclip/attachment.rb:378:in `post_process_styles'
from /u/apps/moviealerts/releases/20091023004008/vendor/plugins/paperclip/lib/paperclip/attachment.rb:364:in `post_process'
from /u/apps/moviealerts/releases/20091023004008/vendor/plugins/paperclip/lib/paperclip/attachment.rb:87:in `assign'
from /u/apps/moviealerts/releases/20091023004008/vendor/plugins/paperclip/lib/paperclip.rb:233:in `poster='
from /u/apps/moviealerts/releases/20091023004008/app/models/movie.rb:194:in `download_remote_image'
@pcg79
Copy link
Author

pcg79 commented Oct 7, 2011

As an FYI, I posted this gist here - thoughtbot/paperclip#44

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment