method

merge_multi_values

Importance_0
merge_multi_values() private

No documentation

This method has no description. You can help the Ruby on Rails community by adding new notes.

Hide source
# File activerecord/lib/active_record/relation/merger.rb, line 107
      def merge_multi_values
        lhs_wheres = relation.where_values
        rhs_wheres = values[:where] || []
        lhs_binds  = relation.bind_values
        rhs_binds  = values[:bind] || []

        removed, kept = partition_overwrites(lhs_wheres, rhs_wheres)

        relation.where_values = kept + rhs_wheres
        relation.bind_values  = filter_binds(lhs_binds, removed) + rhs_binds

        if values[:reordering]
          # override any order specified in the original relation
          relation.reorder! values[:order]
        elsif values[:order]
          # merge in order_values from r
          relation.order! values[:order]
        end

        relation.extend(*values[:extending]) unless values[:extending].blank?
      end
Register or log in to add new notes.