Project

bigamy

0.0
No commit activity in last 3 years
No release in over 3 years
Have associations between ActiveRecord objects and MongoMapper documents
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Development

active_record
>= 2.3.5
= 0.9.8
= 0.10.3
= 2.11.0
 Project Readme
= 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.