aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--activerecord/CHANGELOG2
-rwxr-xr-xactiverecord/lib/active_record/associations.rb43
2 files changed, 42 insertions, 3 deletions
diff --git a/activerecord/CHANGELOG b/activerecord/CHANGELOG
index caddb6412a..625a98a8f5 100644
--- a/activerecord/CHANGELOG
+++ b/activerecord/CHANGELOG
@@ -1,5 +1,7 @@
*SVN*
+* Quickref for association methods. #7723 [marclove, Mindsweeper]
+
* Calculations: return nil average instead of 0 when there are no rows to average. #8298 [davidw]
* acts_as_nested_set: direct_children is sorted correctly. #4761 [Josh Peek, rails@33lc0.net]
diff --git a/activerecord/lib/active_record/associations.rb b/activerecord/lib/active_record/associations.rb
index e4bde6fc13..c1e93116d5 100755
--- a/activerecord/lib/active_record/associations.rb
+++ b/activerecord/lib/active_record/associations.rb
@@ -101,9 +101,46 @@ module ActiveRecord
# adds a method with that name to its model, it will override the inherited method and break things.
# For instance, #attributes and #connection would be bad choices for association names.
#
- # == Example
- #
- # link:files/examples/associations.png
+ # == Auto-generated methods
+ #
+ # ===Singular associations (one-to-one)
+ # | | belongs_to |
+ # generated methods | belongs_to | :polymorphic | has_one
+ # ----------------------------------+------------+--------------+---------
+ # #other | X | X | X
+ # #other=(other) | X | X | X
+ # #build_other(attributes={}) | X | | X
+ # #create_other(attributes={}) | X | | X
+ # #other.create!(attributes={}) | | | X
+ # #other.nil? | X | X |
+ #
+ # ===Collection associations (one-to-many / many-to-many)
+ # | | | has_many
+ # generated methods | habtm | has_many | :through
+ # ----------------------------------+-------+----------+----------
+ # #others | X | X | X
+ # #others=(other,other,...) | X | X |
+ # #other_ids | X | X |
+ # #other_ids=(id,id,...) | X | X |
+ # #others<< | X | X | X
+ # #others.push | X | X | X
+ # #others.concat | X | X | X
+ # #others.build(attributes={}) | X | X | X
+ # #others.create(attributes={}) | X | X |
+ # #others.create!(attributes={}) | X | X | X
+ # #others.size | X | X |
+ # #others.length | X | X |
+ # #others.count | | X |
+ # #others.sum(args*,&block) | X | X | X
+ # #others.empty? | X | X |
+ # #others.clear | X | X |
+ # #others.delete(other,other,...) | X | X | X
+ # #others.delete_all | X | X |
+ # #others.destroy_all | X | X |
+ # #others.find(*args) | X | X | X
+ # #others.find_first | X | |
+ # #others.uniq | X | X |
+ # #others.reset | X | X | X
#
# == Cardinality and associations
#