README in bigamy-0.1.0 vs README in bigamy-0.1.1
- old
+ new
@@ -1,11 +1,70 @@
= Bigamy
-
Enable seamless Ruby-ness between ActiveRecord objects & MongoMapper documents
-= License
+class User < ActiveRecord::Base
+ Bigamy.setup self
+ has_one_mm :doc
+ has_many_mm :photos
+end
+
+class Doc
+ include MongoMapper::Document
+ Bigamy.setup self
+
+ belongs_to_ar :user
+end
+
+class Photo
+ include MongoMapper::Document
+ Bigamy.setup self
+
+ 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.setup can take any number of classes as arguments, and can be in an initializer like:
+
+Bigamy.setup User, Doc
+
+
+= License
Bigmay is released under the MIT license.
-= Support
+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.