Sha256: 7497e54c5717e0e2b92956b70d2dc91bca61a092f106db8666fbb11af72ea4c2

Contents?: true

Size: 1.22 KB

Versions: 2

Compression:

Stored size: 1.22 KB

Contents

= Bigamy
Enable seamless Ruby-ness between ActiveRecord objects & MongoMapper documents

class User < ActiveRecord::Base
  has_one_mm :doc
  has_many_mm :photos
end

class Doc
  include MongoMapper::Document

  belongs_to_ar :user
end

class Photo
  include MongoMapper::Document

  belongs_to_ar :user
end


Bigamy sets foreign keys upon assignment.  It doesn't keep track of dirty children.
It doesn't allow you to operate with new records.  So when you do:

@user.doc = @doc

- @user has to be saved already.
- @doc has to be saved already.
- @doc will have it's user_id attribute updated immediately.

When you do:

@user.photos = Photo.all

- every Photo document will have it's user_id attribute set immediately


== Options
The available class methods are:

For AR:
  belongs_to_mm
  has_one_mm
  has_many_mm

For MM:
  belongs_to_ar
  has_one_ar
  has_many_ar

All class methods take :foreign_key, :class, and :primary_key options as a hash


== Setup
Bigamy installs itself into MongoMapper and ActiveRecord automatically.

= License
Bigmay is released under the MIT license.

It's developed by Ryan Angilly and released with the permission of MyPunchbowl.com

= Support
Just email me at ryan@angilly.com with questions, bugs, or patches.

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
bigamy-0.2.2 README
bigamy-0.2.1 README