Rick Olson
56af14d5aa
Changed has_and_belongs_to_many join to INNER JOIN for Mysql 3.23.x. Closes #4348 [Rick]
...
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4038 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-03-26 04:08:50 +00:00
Rick Olson
6636eb16c5
Fixed issue that kept :select options from being scoped [Rick]
...
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4036 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-03-26 00:36:55 +00:00
Rick Olson
38bae0a969
Change has_many :through to use the :source option to specify the source association. :class_name is now ignored. [Rick Olson]
...
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4022 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-03-24 14:46:17 +00:00
Rick Olson
6fbf408238
Allow overriding of find parameters in scoped has_many :through calls [Rick Olson]
...
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4007 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-03-21 16:33:22 +00:00
Rick Olson
ea25e246e0
Quit ignoring default :include options in has_many :through calls [Mark James]
...
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3974 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-03-19 16:13:52 +00:00
Rick Olson
0925c6b6a0
Allow has_many :through to work on has_many associations ( closes #3864 ) [sco@scottraymond.net]
...
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3964 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-03-19 02:01:40 +00:00
Rick Olson
57af961a80
Raise error when trying to select many polymorphic objects with has_many :through or :include ( closes #4226 ) [josh@hasmanythrough.com]
...
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3961 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-03-19 00:53:24 +00:00
Rick Olson
9c9069a675
Fixed has_many :through to include :conditions set on the :through association. closes #4020 [jonathan@bluewire.net.nz]
...
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3958 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-03-18 23:14:31 +00:00
Rick Olson
fbd1e01bd6
Fix that has_many :through honors the foreign key set by the belongs_to association in the join model ( closes #4259 ) [andylien@gmail.com / Rick]
...
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3954 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-03-18 22:38:49 +00:00
David Heinemeier Hansson
e18fad6c43
Update lingering uses of deprecated association dependency options ( closes #4169 ) [coffe2code]
...
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3941 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-03-18 20:25:50 +00:00
Rick Olson
50103b86e6
fixed has_many :conditions sanitizing ( closes #4278 ) [hakuja@hakuja.net]
...
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3935 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-03-18 18:01:50 +00:00
David Heinemeier Hansson
df97ed5e4c
Nicer error message on has_many :through when :through reflection can not be found ( closes #4042 ) [court3nay@gmail.com]
...
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3910 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-03-18 03:39:18 +00:00
Rick Olson
ee1ae44e0e
remove some commented-out cruft
...
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3898 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-03-16 06:22:30 +00:00
Rick Olson
a3502c419e
Use association's :conditions when eager loading. [jeremyevans0@gmail.com] closes #4144
...
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3897 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-03-16 06:17:54 +00:00
Rick Olson
def746030c
Added Base.abstract_class? that marks which classes are not part of the Active Record hierarchy. closes #3704
...
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3882 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-03-16 02:46:01 +00:00
Jamis Buck
966c276d60
Fix counter cache setting in belongs-to proxy
...
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3828 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-03-09 20:55:14 +00:00
Jamis Buck
ff881c7f8b
Make counter cache work when replacing an association ( closes #3245 ). Thanks for the patch!
...
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3762 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-03-04 19:42:41 +00:00
David Heinemeier Hansson
116658e69b
Fixed that calling HasOneProxy#build_model repeatedly would cause saving to happen ( closes #4058 ) [anna@wota.jp]
...
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3753 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-03-03 06:25:39 +00:00
David Heinemeier Hansson
a32a986364
save polymorphic joins from the has_many|one association ( closes #3812 ) [Rick Olson]
...
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3586 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-02-12 18:03:43 +00:00
Michael Koziarski
5f4b66201e
Allow has_many :through to work with :include [Michael Schoen]. Closes #3611
...
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3566 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-02-10 05:19:41 +00:00
Jeremy Kemper
b3065a51a9
Polymorphic join support for has_one associations (has_one :foo, :as => :bar). Closes #3785 .
...
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3558 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-02-09 19:37:05 +00:00
David Heinemeier Hansson
05eb14d55a
Using AssociationCollection#build with arrays of hashes should call build, not create [DHH]
...
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3525 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-02-03 18:20:19 +00:00
David Heinemeier Hansson
1facce6c24
allow has_many :through to work with custom :foreign key ( closes #3422 ) [Rick Olson]
...
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3456 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-01-21 23:40:20 +00:00
Michael Koziarski
8fe6b90e5f
Fix .count for has_many associations with multi-line finder-sql. Closes #3540
...
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3450 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-01-21 07:53:45 +00:00
Tobias Lütke
581f12b7b1
removed :piggyback in favor of just allowing :select on :through associations
...
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3326 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-12-20 21:26:27 +00:00
Tobias Lütke
90099e9dc2
made .find() and class method delegation work on :through relations
...
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3325 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-12-20 21:20:35 +00:00
Tobias Lütke
1d2c6ee8f3
added :piggyback option to has_many :through relationships to pick up values from the join table as needed
...
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3323 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-12-20 20:32:47 +00:00
Tobias Lütke
5f06c483ca
Fixed :through relations when using STI inherited classes would use the inherited class's name as foreign key on the join model
...
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3315 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-12-16 23:24:58 +00:00
David Heinemeier Hansson
e5d9ad3e29
Added option inheritance for find calls on has_and_belongs_to_many and 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
2005-12-13 00:39:51 +00:00
David Heinemeier Hansson
6427db6baa
Added tests for join models and fixed a bug #3177
...
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3279 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-12-11 18:06:51 +00:00
David Heinemeier Hansson
4263490728
Fix has_many :through
...
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3227 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-12-07 23:20:11 +00:00
David Heinemeier Hansson
6abda696b5
Added preliminary support for join models [DHH] Added preliminary support 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
2005-12-03 04:29:55 +00:00
David Heinemeier Hansson
57b7532b91
Work-in progress for providing better join model support and polymorphic associations
...
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3209 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-12-02 06:03:43 +00:00
Jeremy Kemper
d21ba5aec9
has_and_belongs_to_many: use JOIN instead of LEFT JOIN. References #2937 .
...
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3155 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-11-21 22:27:19 +00:00
Jeremy Kemper
86da56a654
Don't add the same conditions twice in has_one finder sql. References #2916 .
...
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3074 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-11-17 20:45:38 +00:00
Jeremy Kemper
3441dfdb12
Associations handle case-equality more consistently: item.parts.is_a?(Array) and item.parts === Array. Closes #1345 .
...
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3043 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-11-15 10:48:32 +00:00
Jeremy Kemper
3309268120
Add :group option, correspond to GROUP BY, to the find method and to the has_many association. Closes #2818 .
...
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@2974 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-11-10 16:36:01 +00:00
David Heinemeier Hansson
49c801b71d
Added :include as an option for association declarations [DHH]
...
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@2898 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-11-06 20:39:34 +00:00
Jeremy Kemper
390e6d246c
r2915@asus: jeremy | 2005-11-06 05:02:53 -0800
...
Rename Base.constrain to Base.with_scope so it doesn't conflict with existing concept of database constraints. Make scoping more robust: uniform method => parameters, validated method names and supported finder parameters, raise exception on nested scopes.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@2888 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-11-06 10:18:51 +00:00
David Heinemeier Hansson
a5a82d978b
Added extension capabilities to has_many and has_and_belongs_to_many proxies [DHH] Added find_or_create_by_X as a second type of dynamic finder that'll create the record if it doesn't already exist [DHH] Added constrain scoping for creates using a hash of attributes bound to the :creation key [DHH]
...
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@2872 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-11-04 19:39:50 +00:00
David Heinemeier Hansson
8c512a1caf
Added extension capabilities to has_many and has_and_belongs_to_many proxies [DHH]
...
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@2861 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-11-03 09:06:42 +00:00
Jeremy Kemper
e7cd7e9d95
r3800@sedna: jeremy | 2005-10-28 00:39:05 -0700
...
Readonly constraints, association collection method_missing, dup constraint options
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@2774 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-10-28 04:53:22 +00:00
Tobias Lütke
5f0b9369cc
Fix Associations#clear for not-yet-loaded associations (Patrick Lenz)
...
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@2695 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-10-20 15:05:48 +00:00
Jeremy Kemper
7219e82fe6
HABTM finder sets :readonly => false. Closes #2525 .
...
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@2694 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-10-20 14:53:04 +00:00
Jeremy Kemper
328ef3feaa
Parenthesize :conditions
...
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@2681 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-10-18 23:52:07 +00:00
Nicholas Seckar
67e900c0f4
Fix bad commit. (Bad developer, bad\!)
...
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@2633 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-10-16 01:20:43 +00:00
Nicholas Seckar
9369137676
Add __FILE__ and __LINE__ to eval
...
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@2629 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-10-15 22:56:36 +00:00
Tobias Lütke
5fa8793f02
DRYed up Associations#clear. Closes #1906 [Caleb]
...
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@2580 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-10-14 12:53:39 +00:00
Jamis Buck
99f3ae0845
Fix errors caused by assigning a has-one or belongs-to property to itself
...
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@2562 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-10-13 19:21:45 +00:00
Jeremy Kemper
efaf2af07c
r3653@asus: jeremy | 2005-09-28 00:23:49 -0700
...
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
2005-09-28 03:52:57 +00:00