aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/lib/active_record/associations/preloader.rb
Commit message (Collapse)AuthorAgeFilesLines
* https://github.com/rails/rails/commit/2075f39d726cef361170218fd16421fc52bed5 ↵Vipul A M2013-12-311-1/+1
| | | | | | | | | | | | | | | | | a8 introduced a regression in includes/preloades by calling `read_attribute` on an association when preloading takes places, instead of using loaded records in `association.target`. tl;dr Records are not made properly available via `read_attribute` when preloding in simultaneous, but value of `@loaded` is already set true, and records concatenated in `association.target` on an association object. When `@loaded` is true we return an object of `AlreadyLoaded` in preload_for. In `AlreadyLoaded` to return preloaded records we make wrong use of `read_attribute`, instead of `target` records. The regression is fixed by making use of the loaded records in `association.target` when the preloading takes place. Fixes #13437
* Make missed association exception message more informativePaul Nikitochkin2013-10-131-3/+3
| | | | | Add target class name, which should have missed association on preload, into exception message to simplify detecting problem part.
* remove the HABTM preloaderAaron Patterson2013-10-021-3/+0
|
* guarantee that `klass` is not nil inside the preloader objectsAaron Patterson2013-09-241-4/+11
|
* eliminate the `loaded?` conditionalAaron Patterson2013-09-241-2/+6
|
* push preloaded test up to the factory method so we can eliminateAaron Patterson2013-09-241-2/+17
| | | | conditionals from the individual preloaded classes
* pass the preloader down so we only have to construct oneAaron Patterson2013-09-231-2/+4
|
* remove state from the preloaderAaron Patterson2013-09-231-17/+7
|
* pass the scope all the way down to the constructorsAaron Patterson2013-09-231-10/+10
|
* hm:t preloading will respect order set on the RHS associationAaron Patterson2013-09-231-1/+1
|
* fix method nameAaron Patterson2013-09-201-3/+5
|
* access preloaders independently of model mutationsAaron Patterson2013-09-201-12/+12
|
* push running the preloaders upAaron Patterson2013-09-201-19/+7
|
* push `run` up to preloadAaron Patterson2013-09-201-10/+30
|
* the hash should only ever be length one, so decompose itAaron Patterson2013-09-201-4/+5
|
* stop depending on preloader interals so we can create fewer preloaderAaron Patterson2013-09-201-19/+23
| | | | objects
* lhs preload is always a single preload, so just preload oneAaron Patterson2013-09-201-3/+3
|
* just read the attribute rather than `send`ingAaron Patterson2013-09-201-1/+1
|
* extract exception raising, clean up group_by statementAaron Patterson2013-09-201-6/+7
|
* generate fewer objects when groupingAaron Patterson2013-09-201-5/+7
|
* do not access internal data structuresAaron Patterson2013-09-201-1/+1
|
* reduce relation allocationsAaron Patterson2013-08-301-1/+3
|
* require a class for cache computationsAaron Patterson2013-08-301-1/+1
|
* add a specific factory method rather than using newAaron Patterson2013-07-231-1/+1
|
* refactoring to_sym of Symbol in preloadAngelo capilleri2013-01-021-1/+3
|
* Migration of docs to 1.9 hash syntaxAvnerCohen2012-10-231-3/+3
|
* Eager autoload Preloader classesJohn Firebaugh2012-10-101-10/+14
| | | | | Without eager autoloading, these would be autoloaded only when #preloader_for is called, which is too late in threaded applications.
* 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
|
* Represent association scope options as AR::Relations insternally.Jon Leighton2012-07-131-12/+7
|
* Fix AR preloader exampleAlexey Vakhov2012-05-221-1/+1
|
* Rewrote AssociationPreload.Jon Leighton2011-02-281-0/+177