# File lib/dragonfly/data_storage/couch_data_store.rb, line 24 def store(temp_object, opts={}) meta = opts[:meta] || {} name = meta[:name] || temp_object.original_filename || 'file' content_type = opts[:content_type] || opts[:mime_type] || 'application/octet-stream' temp_object.file do |f| doc = CouchRest::Document.new(:meta => marshal_encode(meta)) response = db.save_doc(doc) doc.put_attachment(name, f.dup, :content_type => content_type) form_uid(response['id'], name) end rescue RuntimeError => e raise UnableToStore, "#{e} - #{temp_object.inspect}" end