aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/test/cases/associations/has_many_through_associations_test.rb
Commit message (Collapse)AuthorAgeFilesLines
...
* | Build fix when running in isolationArun Agrawal2014-11-141-0/+1
| | | | | | | | | | `Computer` class needs to be require See #17217 for more details
* | Do not mark object as persisted after an association is savedRafael Mendonça França2014-09-051-19/+0
| | | | | | | | | | | | | | | | | | | | | | Callback order in Active Record objects are important. Users should not define callbacks before the association definition or surprising behaviours like the described at #3798 will happen. This callback order dependency is documented at https://github.com/rails/rails/blob/31bfcdc77ca0d8cec9b5fe513bdc6f05814dd4f1/activerecord/lib/active_record/associations.rb#L1222-1227. This reverts #15728. Fixes #16620.
* | Ignore SCHEMA queries when asserting no queriesAkira Matsuda2014-08-281-1/+1
| |
* | Deprecate automatic counter caches on has_many :throughSean Griffin2014-06-261-5/+5
| | | | | | | | | | | | | | | | | | | | | | Reliant on https://github.com/rails/rails/pull/15747 but pulled to a separate PR to reduce noise. `has_many :through` associations have the undocumented behavior of automatically detecting counter caches. However, the way in which it does so is inconsistent with counter caches everywhere else, and doesn't actually work consistently. As with normal `has_many` associations, the user should specify the counter cache on the `belongs_to`, if they'd like it updated.
* | Merge pull request #15728 from sgrif/sg-double-save-hm-tRafael Mendonça França2014-06-191-1/+20
|\ \ | | | | | | | | | | | | | | | | | | | | | Don't save through records twice Conflicts: activerecord/CHANGELOG.md activerecord/test/cases/associations/has_many_through_associations_test.rb
| * | Don't save through records twiceSean Griffin2014-06-171-0/+19
| | | | | | | | | | | | | | | | | | | | | If the through record gets created in an `after_create` hook that is defined before the association is defined (therefore after its `after_create` hook) get saved twice. This ensures that the through records are created only once, regardless of the order of the hooks.
* | | Don't include inheritance column in the through_scope_attributesNat Budin2014-06-171-0/+8
|/ /
* / Through associations should set both parent ids on join modelsSean Griffin2014-06-131-0/+13
|/ | | | | | | | | | | | | member = Member.new(club: Club.new) member.save! Before: member.current_membership.club_id # => nil After: member.current_membership.club_id # => club's id
* clear shouldnt fire callbacks so remove order testeileencodes2014-04-281-3/+0
| | | | | | Since clear shouldn't fire callbacks the order doesn't matter since it was never updated. Remove the portion of this test that tests for order after clear.
* Perfer to define methods instead of calling testRafael Mendonça França2014-04-221-4/+4
| | | | This file is using this pattern already
* Fix syntax errorRafael Mendonça França2014-04-221-0/+1
|
* Merge pull request #14573 from habermann24/has_many_through_fixRafael Mendonça França2014-04-221-0/+11
|\ | | | | | | | | | | | | | | Properly handle scoping with has_many :through. Fixes #14537. Conflicts: activerecord/CHANGELOG.md activerecord/test/cases/associations/has_many_through_associations_test.rb
| * Properly handle scoping with has_many :through. Fixes #14537.Jan Habermann2014-04-031-0/+12
| |
* | Merge pull request #12829 from iantropov/issue_insert_via_hmt_scope_3548Rafael Mendonça França2014-04-101-1/+13
|\ \ | |/ |/| | | | | | | | | Fix insertion of records for hmt association with scope Conflicts: activerecord/CHANGELOG.md
| * Fix insertion of records for hmt association with scope, fix #3548Ivan Antropov2013-11-171-1/+13
| |
* | Add regression test for collection proxy readerArthur Neves2014-02-201-0/+7
|/ | | | [related #14116]
* Prevent the counter cache from being decremented twicedm1try2013-11-111-0/+9
| | | | | when destroying a record on a has_many :through association. :destroy method has own counter_cache callbacks.
* Assert the return value in the testRafael Mendonça França2013-10-271-1/+1
|
* Skip `include_values` from through associations chains for building target scopePaul Nikitochkin2013-10-271-0/+4
| | | | Fixes: #12242, #9517, #10240
* Using flat_map instead of map and flattenArun Agrawal2013-10-091-1/+1
| | | | | | original commit 8998441967a8cfc6e4302c29664ab9d0acd77704 Reverted here ec8ef1e1055c4e1598da13f49d30261f07f4a9b4
* adding a test to demonstrate how to use STI subclasses on the far rightAaron Patterson2013-09-271-0/+7
| | | | side of a hm:t association along with preloading.
* push preloaded test up to the factory method so we can eliminateAaron Patterson2013-09-241-1/+0
| | | | conditionals from the individual preloaded classes
* we can't sort by lhs since the middle records have difference classesAaron Patterson2013-09-231-1/+2
| | | | and possibly different rules for finding those objects
* adding a test for sti on middle tables with sorting on RHSAaron Patterson2013-09-231-1/+14
|
* hm:t preloading will respect order set on the RHS associationAaron Patterson2013-09-231-0/+15
|
* fix deleting join models with no pkAaron Patterson2013-09-111-5/+47
|
* hm:t join tables may not have a primary keyAaron Patterson2013-09-061-0/+18
|
* adding a hm:t test for singleton ar objectsAaron Patterson2013-09-031-0/+27
|
* add missing fixtures fileAaron Patterson2013-08-301-1/+2
|
* make sure there are actually some categories when running the testAaron Patterson2013-08-291-0/+1
|
* pk should not be required for hm:t associationsAaron Patterson2013-08-291-0/+7
|
* Merge branch 'master' of github.com:rails/docrailsVijay Dev2013-08-171-1/+1
|\ | | | | | | | | | | | | | | Conflicts: actionview/README.rdoc activerecord/lib/active_record/migration.rb guides/source/development_dependencies_install.md guides/source/getting_started.md
| * Revert "Merge branch 'master' of github.com:rails/docrails"Vijay Dev2013-08-171-1/+1
| | | | | | | | | | | | | | This reverts commit 70d6e16fbad75b89dd1798ed697e7732b8606fa3, reversing changes made to ea4db3bc078fb3093ecdddffdf4f2f4ff3e1e8f9. Seems to be a code merge done by mistake.
* | add a test for concat on hm:t associationsAaron Patterson2013-08-021-0/+7
|/
* used flat_map instead of map.flattenKarunakar (Ruby)2013-07-251-1/+1
|
* Make sure that a joins Relation can be merged with has_many :through + ↵Akira Matsuda2013-07-101-0/+6
| | | | | | association proxy Closes #11248.
* Do not invoke callbacks when delete_all is calledNeeraj Singh2013-06-301-0/+34
| | | | | | | | | | | Method `delete_all` should not be invoking callbacks and this feature was deprecated in Rails 4.0. This is being removed. `delete_all` will continue to honor the `:dependent` option. However if `:dependent` value is `:destroy` then the default deletion strategy for that collection will be applied. User can also force a deletion strategy by passing parameter to `delete_all`. For example you can do `@post.comments.delete_all(:nullify)`
* has_many through obeys order on through associationNeeraj Singh2013-04-041-1/+7
| | | | fixes #10016
* Prevent Relation#merge from collapsing wheres on the RHSJon Leighton2013-01-271-0/+7
| | | | | | | | | | | | | | | | | | | | | | | This caused a bug with the new associations implementation, because now association conditions are represented as Arel nodes internally right up to when the whole thing gets turned to SQL. In Rails 3.2, association conditions get turned to raw SQL early on, which prevents Relation#merge from interfering. The current implementation was buggy when a default_scope existed on the target model, since we would basically end up doing: default_scope.merge(association_scope) If default_scope contained a where(foo: 'a') and association_scope contained a where(foo: 'b').where(foo: 'c') then the merger would see that the same column is representated on both sides of the merge and collapse the wheres to all but the last: where(foo: 'c') Now, the RHS of the merge is left alone. Fixes #8990
* Revert "Merge pull request #8989 from robertomiranda/use-rails-4-find-by"Guillermo Iguaran2013-01-181-1/+1
| | | | | This reverts commit 637a7d9d357a0f3f725b0548282ca8c5e7d4af4a, reversing changes made to 5937bd02dee112646469848d7fe8a8bfcef5b4c1.
* User Rails 4 find_byrobertomiranda2013-01-181-1/+1
|
* Rename update_attributes method to update, keep update_attributes as an aliasAmparo Luna + Guillermo Iguaran2013-01-031-1/+1
|
* Fix for has_many_through counter_cache bugMatthew Robertson2012-12-141-0/+11
| | | | | | This commit fixes reported issue #7630 in which counter caches were not being updated properly when replacing has_many_through relationships
* Merge and add tests related to 5215Vipul A M2012-11-121-6/+13
|
* remove duplicated require statements in AR test casesYves Senn2012-10-091-1/+0
|
* Revert "Use flat_map { } instead of map {}.flatten"Santiago Pastorino2012-10-051-1/+1
| | | | | | | | | | | This reverts commit abf8de85519141496a6773310964ec03f6106f3f. We should take a deeper look to those cases flat_map doesn't do deep flattening. irb(main):002:0> [[[1,3], [1,2]]].map{|i| i}.flatten => [1, 3, 1, 2] irb(main):003:0> [[[1,3], [1,2]]].flat_map{|i| i} => [[1, 3], [1, 2]]
* Use flat_map { } instead of map {}.flattenSantiago Pastorino2012-10-051-1/+1
|
* Count returns 0 without querying if parent is not savedFrancesco Rodriguez2012-10-031-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | Patches `CollectionAssociation#count` to return 0 without querying if the parent record is new. Consider the following code: class Account has_many :dossiers end class Dossier belongs_to :account end a = Account.new a.dossiers.build # before patch a.dossiers.count # SELECT COUNT(*) FROM "dossiers" WHERE "dossiers"."account_id" IS NULL # => 0 # after a.dosiers.count # fires without sql query # => 0 Fixes #1856.
* Merge pull request #7251 from rails/integrate-strong_parametersDavid Heinemeier Hansson2012-09-181-15/+0
|\ | | | | Integrate strong_parameters in Rails 4
| * Remove mass assignment security from ActiveRecordGuillermo Iguaran2012-09-161-15/+0
| |