Module: CoreExtensions::ActiveRecord::Relation

Defined in:
lib/core_extensions/active_record/relation.rb

Instance Method Summary collapse

Instance Method Details

#final(final = true) ⇒ Object

Parameters:

  • final (Boolean) (defaults to: true)


22
23
24
25
26
27
# File 'lib/core_extensions/active_record/relation.rb', line 22

def final(final = true)
  check_command('FINAL')
  @table = @table.dup
  @table.final = final
  self
end

#reverse_order!Object



4
5
6
7
8
9
10
11
12
# File 'lib/core_extensions/active_record/relation.rb', line 4

def reverse_order!
  return super unless connection.is_a?(::ActiveRecord::ConnectionAdapters::ClickhouseAdapter)

  orders = order_values.uniq.reject(&:blank?)
  return super unless orders.empty? && !primary_key

  self.order_values = (column_names & %w[date created_at]).map { |c| arel_table[c].desc }
  self
end

#settings(**opts) ⇒ Object

Parameters:

  • opts (Hash)


15
16
17
18
19
# File 'lib/core_extensions/active_record/relation.rb', line 15

def settings(**opts)
  check_command('SETTINGS')
  @values[:settings] = (@values[:settings] || {}).merge opts
  self
end