| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
We should consider moving the input munging outside the class
instantiation
|
| |
|
|
|
|
| |
Stop typechecking the parameter. We know the type.
|
|
|
|
| |
The reflections hash is supposed to be private, so let's use the API.
|
|
|
|
|
| |
`instantiate` is only called once, so there is no reason to cache the
data structure on the instance and mutate itself.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
We know the structure passed in to the `construct` method will be a
hash, so we don't need to test it all the time. The key value will be a
symbol or string, so handle it with the special method
|
|
|
|
|
| |
We control the inputs to `construct`, so the wrong type shouldn't be
passed in ever.
|
| |
|
| |
|
| |
|
|
|
|
|
| |
We always know the parameters in advance, so we don't need to build it
in to the method signature
|
|
|
|
|
| |
We always set the join type immediately after construction, just make it
part of the constructor and we can skip that step
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
#join_associations.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Current code stores the klass name in active_record and this
is used throughout. While reviewing the code time and again
I had the mental picture of active_record being an instance of
a klass. However here the actual klass is being stored in
@active_record.
Secondly at two different places while referring to @active_record
the comment refers to it as base klass. All this points to
active_record being not the best variable name.
So I thought it is better to replace active_record with base_klass.
This change is confined to JoinDependency, JoinBase, JoinPart and
JoinAssociation - all joining related work.
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
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]]
|
| |
|
|
|
|
|
|
|
| |
armstrjare/active_record_relation_keep_association_join_context_on_merge"
This reverts commit dcd04e76179611a9db28c9e391aa7d6c2a5b046a, reversing
changes made to 58a49875df63729f07a9a81d1ee349087d258df5.
|
| |
|
|
|
|
|
|
| |
would get ConnectionNotEstablished error because it always tried to use
ActiveRecord::Base's connection, even though it should be using the connection
of the model whose context we're operating in
|
| |
|
|
|
|
| |
loaded. Fixes #2054.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Conflicts:
activerecord/CHANGELOG
activerecord/lib/active_record/association_preload.rb
activerecord/lib/active_record/associations.rb
activerecord/lib/active_record/associations/class_methods/join_dependency.rb
activerecord/lib/active_record/associations/class_methods/join_dependency/join_association.rb
activerecord/lib/active_record/associations/has_many_association.rb
activerecord/lib/active_record/associations/has_many_through_association.rb
activerecord/lib/active_record/associations/has_one_association.rb
activerecord/lib/active_record/associations/has_one_through_association.rb
activerecord/lib/active_record/associations/through_association_scope.rb
activerecord/lib/active_record/reflection.rb
activerecord/test/cases/associations/has_many_through_associations_test.rb
activerecord/test/cases/associations/has_one_through_associations_test.rb
activerecord/test/cases/reflection_test.rb
activerecord/test/cases/relations_test.rb
activerecord/test/fixtures/memberships.yml
activerecord/test/models/categorization.rb
activerecord/test/models/category.rb
activerecord/test/models/member.rb
activerecord/test/models/reference.rb
activerecord/test/models/tagging.rb
|
|
ActiveRecord::Associations::ClassMethods to just ActiveRecord::Associations
|