aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/lib/active_record/associations.rb
Commit message (Collapse)AuthorAgeFilesLines
* Change LEFT OUTER JOIN authors AS authors to LEFT OUTER JOIN authors authors ↵David Heinemeier Hansson2006-03-161-9/+9
| | | | | | so associations will work for Oracle again (closes #4231) [schoenm@earthlink.net] git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3891 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Allow :dependent options to be used with polymorphic joins. #3820 [Rick Olson]Rick Olson2006-03-161-3/+10
| | | | git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3881 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Allow counter_cache to accept a column nameJamis Buck2006-03-091-3/+8
| | | | git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3825 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* format fix for locking [Michael Koziarski]Michael Koziarski2006-03-091-4/+7
| | | | | | | Add documentation for :dependent on associations. [robby@planetargon.com] Closes #4151 git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3822 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Fix quoting of inheritance column for STI eager loading #4098 [Jonathan ↵Rick Olson2006-03-061-7/+7
| | | | | | Viney <jonathan@bluewire.net.nz>] git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3790 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* slight change to eager associations table aliasing: use class_reflection, ↵Rick Olson2006-03-061-1/+1
| | | | | | like 'post_comments' or 'tree_children' git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3788 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Fixed eager loading problems with single-table inheritance [Rick Olson] ↵David Heinemeier Hansson2006-03-051-46/+55
| | | | | | Added smarter table aliasing for eager associations for multiple self joins [Rick Olson] (closes #3580) git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3776 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Added cascading eager loading that allows for queries like Author.find(:all, ↵David Heinemeier Hansson2006-03-041-133/+237
| | | | | | :include=> { :posts=> :comments }), which will fetch all authors, their posts, and the comments belonging to those posts in a single query (using LEFT OUTER JOIN) #3913 [anna@wota.jp] git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3769 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Make counter_cache work with polymorphic belongs_toJamis Buck2006-03-041-12/+12
| | | | git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3756 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Dont require association classes before theyre supposed to be used (closes ↵David Heinemeier Hansson2006-02-271-11/+2
| | | | | | #3976) [Rick Olson] git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3681 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Allow has_many :through to work with :include [Michael Schoen]. Closes #3611Michael Koziarski2006-02-101-1/+1
| | | | git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3566 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Polymorphic join support for has_one associations (has_one :foo, :as => ↵Jeremy Kemper2006-02-091-1/+1
| | | | | | :bar). Closes #3785. git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3558 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* * Fix pagination problems when using includeMichael Koziarski2006-02-091-14/+59
| | | | | | | | | | * Introduce Unit Tests for pagination * Allow count to work with :include by using count distinct. [Kevin Clark & Jeremy Hopple] git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3553 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Fixed that saving a model with multiple habtm associations, would only save ↵Florian Weber2005-12-211-4/+1
| | | | | | the first habtm association. git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3331 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* removed :piggyback in favor of just allowing :select on :through associationsTobias Lütke2005-12-201-1/+1
| | | | git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3326 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* added :piggyback option to has_many :through relationships to pick up values ↵Tobias Lütke2005-12-201-1/+1
| | | | | | from the join table as needed git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3323 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Fix typo in association docs. Closes #3296.Marcel Molina2005-12-201-1/+1
| | | | git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3320 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Added option inheritance for find calls on has_and_belongs_to_many and ↵David Heinemeier Hansson2005-12-131-13/+24
| | | | | | | | has_many assosociations [DHH] Added option to specify :group, :limit, :offset, and :select options from find on has_and_belongs_to_many and has_many assosociations [DHH] Added form_remote_for (form_for meets form_remote_tag) [DHH] git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3287 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Fixed that using :include together with :conditions array in Base.find would ↵David Heinemeier Hansson2005-12-081-3/+4
| | | | | | cause NoMethodError (closes #2887) [Paul Hammmond] git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3240 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Added preliminary support for join models [DHH] Added preliminary support ↵David Heinemeier Hansson2005-12-031-181/+202
| | | | | | for polymorphic associations [DHH] Refactored associations to use reflections to get DRYer, beware, major refactoring -- double check before deploying anything with this (all tests pass, but..) git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3213 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Work-in progress for providing better join model support and polymorphic ↵David Heinemeier Hansson2005-12-021-31/+58
| | | | | | associations git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3209 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Fixed bug where using update_attribute after pushing a record to a habtm ↵Florian Weber2005-11-231-1/+5
| | | | | | association of the object caused duplicate rows in the join table. #2888 git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3167 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* r3095@asus: jeremy | 2005-11-15 22:40:51 -0800Jeremy Kemper2005-11-161-1/+1
| | | | | | | | | | | | | | | | | | | | | | | Ticket #1874 - Firebird adapter r3107@asus: jeremy | 2005-11-16 00:06:14 -0800 quote column aliases r3108@asus: jeremy | 2005-11-16 00:08:12 -0800 quote columns in construct_conditions_from_arguments. update sequence_name docs. introduce prefetched primary keys. r3109@asus: jeremy | 2005-11-16 00:09:08 -0800 double-quote rather than single-quote sqlite columns r3110@asus: jeremy | 2005-11-16 00:09:56 -0800 quote column names and use attribute_condition in validates_uniqueness_of r3111@asus: jeremy | 2005-11-16 00:12:24 -0800 Use QUOTED_TYPE constant in tests r3112@asus: jeremy | 2005-11-16 00:13:28 -0800 restrict test_inserts_with_pre_and_suffix to those adapters which support migrations r3113@asus: jeremy | 2005-11-16 00:14:09 -0800 Use QUOTED_TYPE constant in tests r3114@asus: jeremy | 2005-11-16 00:14:30 -0800 Use QUOTED_TYPE constant in tests git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3051 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Add :group option, correspond to GROUP BY, to the find method and to the ↵Jeremy Kemper2005-11-101-1/+4
| | | | | | has_many association. Closes #2818. git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@2974 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Destroy associated has_and_belongs_to_many records after all before_destroy ↵Jeremy Kemper2005-11-081-2/+11
| | | | | | callbacks but before destroy. This allows you to act on the habtm association as you please while preserving referential integrity. Closes #2065. git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@2940 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Deprecate the old, confusing :exclusively_dependent option in favor of ↵Jeremy Kemper2005-11-081-9/+15
| | | | | | :dependent => :delete_all. git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@2939 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Added :include as an option for association declarations [DHH]David Heinemeier Hansson2005-11-061-4/+10
| | | | git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@2898 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Sharper exampleDavid Heinemeier Hansson2005-11-061-4/+2
| | | | git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@2896 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Made association extensions use simpler block syntaxDavid Heinemeier Hansson2005-11-061-7/+38
| | | | git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@2895 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Added extension capabilities to has_many and has_and_belongs_to_many proxies ↵David Heinemeier Hansson2005-11-031-4/+30
| | | | | | [DHH] git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@2861 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Refactor DB exceptions and deal more with DB2 (closes #2624)David Heinemeier Hansson2005-10-271-1/+1
| | | | git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@2761 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Fix docs (closes #2491)David Heinemeier Hansson2005-10-261-11/+11
| | | | git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@2744 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Parenthesize :conditionsJeremy Kemper2005-10-181-2/+2
| | | | git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@2681 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Added support for using limits in eager loads that involve has_many and ↵David Heinemeier Hansson2005-10-181-9/+54
| | | | | | has_and_belongs_to_many associations git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@2675 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Adds :nullify option to :depends. Closes #2015 (Robby Russell)Tobias Lütke2005-10-151-8/+28
| | | | git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@2595 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Association validation does not belong in a before_save callback: move it ↵Jeremy Kemper2005-10-021-40/+40
| | | | | | into a validation method. Restores the expected model.valid? == model.save. Add tests for cancelling save by returning false from a before_save callback. Remove assumption that before_destroy's return value indicates whether the record was destroyed. git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@2434 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Ticket #2156 - Use foreign_key inflection uniformlyJeremy Kemper2005-09-281-2/+2
| | | | git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@2394 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* r3653@asus: jeremy | 2005-09-28 00:23:49 -0700Jeremy Kemper2005-09-281-1/+3
| | | | | | | Ticket 2221 - model.association.clear should destroy associated objects if :dependent => true instead of nullifying their foreign keys git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@2384 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Fixed saving a record with two unsaved belongs_to associations pointing to ↵Jamis Buck2005-09-201-5/+7
| | | | | | the same object #2023 [Tobias Luetke] git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@2278 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Fix eager loading error messages, allow :include to specify tables using ↵Nicholas Seckar2005-09-181-2/+3
| | | | | | strings or symbols. Closes #2222 git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@2258 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Refactored to a more readble form #1813David Heinemeier Hansson2005-09-111-3/+1
| | | | git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@2202 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Refactored away all the legacy validate_options calls and replaced them with ↵David Heinemeier Hansson2005-09-091-13/+14
| | | | | | Hash#assert_valid_keys git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@2167 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Revert [2040], caused assignment of belongs_to associations to fail in some ↵Jamis Buck2005-08-241-5/+3
| | | | | | cases git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@2048 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Saving a record with two unsaved belongs_to associations pointing to the ↵Jamis Buck2005-08-231-3/+5
| | | | | | same object fails #2023 [Tobias Luetke] git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@2040 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Added support for limit and offset with eager loading of has_one and ↵David Heinemeier Hansson2005-07-111-8/+28
| | | | | | belongs_to associations. Using the options with has_many and has_and_belongs_to_many associations will now raise an ActiveRecord::ConfigurationError #1692 [Rick Olsen] git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1811 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* better error message for missing associations #1631 [courtenay]David Heinemeier Hansson2005-07-091-4/+11
| | | | git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1787 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Made documentation ready for release (AR)David Heinemeier Hansson2005-07-061-2/+2
| | | | git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1733 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Added callback hooks to association collections #1549 [Florian Weber]David Heinemeier Hansson2005-07-041-3/+43
| | | | git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1653 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Fixed that single-table inheritance sub-classes couldn't be used to limit ↵David Heinemeier Hansson2005-07-031-0/+10
| | | | | | the result set with eager loading #1215 [Chris McGrath] git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1619 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Updated all references to the old find_first and find_all to use the new ↵David Heinemeier Hansson2005-06-261-1/+1
| | | | | | style #1511 [Marcel Molina] git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1520 5ecf4fe2-1ee6-0310-87b1-e25e094e27de