aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/lib/active_record/relation/predicate_builder
diff options
context:
space:
mode:
authorMatthew Draper <matthew@trebex.net>2016-02-04 08:02:45 +1030
committerMatthew Draper <matthew@trebex.net>2016-02-04 08:02:45 +1030
commitcdc112e3ea8bd7b5ba787e64f3f8ee3da3e5a64f (patch)
treeaf61cbfd48e5b43dbbc070e7c298a3cf84fc2544 /activerecord/lib/active_record/relation/predicate_builder
parent7710d7f432ca776885a346346ccf0971e80b7a34 (diff)
downloadrails-cdc112e3ea8bd7b5ba787e64f3f8ee3da3e5a64f.tar.gz
rails-cdc112e3ea8bd7b5ba787e64f3f8ee3da3e5a64f.tar.bz2
rails-cdc112e3ea8bd7b5ba787e64f3f8ee3da3e5a64f.zip
Defer Arel attribute lookup to the model class
This still isn't as separated as I'd like, but it at least moves most of the burden of alias mapping in one place.
Diffstat (limited to 'activerecord/lib/active_record/relation/predicate_builder')
-rw-r--r--activerecord/lib/active_record/relation/predicate_builder/relation_handler.rb2
1 files changed, 1 insertions, 1 deletions
diff --git a/activerecord/lib/active_record/relation/predicate_builder/relation_handler.rb b/activerecord/lib/active_record/relation/predicate_builder/relation_handler.rb
index 063150958a..a43478f815 100644
--- a/activerecord/lib/active_record/relation/predicate_builder/relation_handler.rb
+++ b/activerecord/lib/active_record/relation/predicate_builder/relation_handler.rb
@@ -3,7 +3,7 @@ module ActiveRecord
class RelationHandler # :nodoc:
def call(attribute, value)
if value.select_values.empty?
- value = value.select(value.klass.arel_table[value.klass.primary_key])
+ value = value.select(value.klass.arel_attribute(value.klass.primary_key, value.klass.arel_table))
end
attribute.in(value.arel)