Sha256: 445ab1752346518bd3d24405fbb4523abc96b15224e9669985b82b1318eb4a0b
Contents?: true
Size: 768 Bytes
Versions: 83
Compression:
Stored size: 768 Bytes
Contents
# frozen_string_literal: true ActiveRecord::Filter.module_eval do def filters @filters ||= HashWithIndifferentAccess.new end end if Rails::VERSION::MAJOR == 6 ActiveRecord::Relation::Filter.module_eval do def build_arel(aliases = nil) arel = super my_alias_tracker = ActiveRecord::Associations::AliasTracker.create(connection, table.name, []) build_filters(arel, my_alias_tracker) arel end def build_filters(manager, alias_tracker) return unless @filters where_clause = nil @filters.each do |filters| where_clause = filter_clause_factory.build(filters, alias_tracker) manager.where(where_clause.ast) end @values[:where] = where_clause if where_clause end end end
Version data entries
83 entries across 83 versions & 1 rubygems