diff options
author | Aaron Patterson <aaron.patterson@gmail.com> | 2010-08-06 11:31:05 -0700 |
---|---|---|
committer | Aaron Patterson <aaron.patterson@gmail.com> | 2010-08-06 11:31:05 -0700 |
commit | 12b3eca420c2de46d34a363c91b2263d366f4d6c (patch) | |
tree | 35b900fcfd75f0da9510acd0ebad3bb12ad03a84 /activerecord/lib | |
parent | 62bb83d0a27e83b0800e67676cfa0d0c47453f8e (diff) | |
download | rails-12b3eca420c2de46d34a363c91b2263d366f4d6c.tar.gz rails-12b3eca420c2de46d34a363c91b2263d366f4d6c.tar.bz2 rails-12b3eca420c2de46d34a363c91b2263d366f4d6c.zip |
do not rely on arel class structure
Diffstat (limited to 'activerecord/lib')
-rw-r--r-- | activerecord/lib/active_record/relation.rb | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/activerecord/lib/active_record/relation.rb b/activerecord/lib/active_record/relation.rb index deacced627..30be723291 100644 --- a/activerecord/lib/active_record/relation.rb +++ b/activerecord/lib/active_record/relation.rb @@ -319,7 +319,9 @@ module ActiveRecord def scope_for_create @scope_for_create ||= begin @create_with_value || Hash[ - @where_values.grep(Arel::Predicates::Equality).map { |where| + @where_values.find_all { |w| + w.respond_to?(:operator) && w.operator == :== + }.map { |where| [where.operand1.name, where.operand2.respond_to?(:value) ? where.operand2.value : where.operand2] |