MongoMapper and GridFS joined in file upload love.


Declare the plugin and use the attachment method to make attachments.

class Foo
  include MongoMapper::Document
  plugin Joint

  attachment :image
  attachment :pdf

This gives you #image, #image=, #pdf, and #pdf=. The = methods take any IO that responds to read (File, Tempfile, etc). The image and pdf methods return a GridIO instance (can be found in the ruby driver).

Also, #image and #pdf are proxies so you can do stuff like:, doc.image.size, doc.image.type,

If you call a method other than those in the proxy it calls it on the GridIO instance so you can still get at all the GridIO instance methods.

Note on Patches/Pull Requests


Copyright © 2010 John Nunemaker. See LICENSE for details.