method
predicates_unreferenced_by
v6.1.3.1 -
Show latest stable
- Class:
ActiveRecord::Relation::WhereClause
predicates_unreferenced_by(other)private
No documentation available.
# File activerecord/lib/active_record/relation/where_clause.rb, line 151
def predicates_unreferenced_by(other)
referenced_columns = other.referenced_columns
predicates.reject do |node|
attr = extract_attribute(node) || begin
node.left if equality_node?(node) && node.left.is_a?(Arel::Predications)
end
next false unless attr
ref = referenced_columns[attr]
next false unless ref
if equality_node?(node) && equality_node?(ref) || node == ref
true
else
ActiveSupport::Deprecation.warn( Merging (#{node.to_sql}) and (#{ref.to_sql}) no longer maintain both conditions, and will be replaced by the latter in Rails 6.2. To migrate to Rails 6.2's behavior, use `relation.merge(other, rewhere: true)`..squish)
false
end
end
end