Flowdock
method

construct_counter_sql

Importance_0
v3.0.9 - Show latest stable - 0 notes - Class: ActiveRecord::Associations::AssociationCollection
  • 1.0.0
  • 1.1.6
  • 1.2.6
  • 2.0.3
  • 2.1.0
  • 2.2.1
  • 2.3.2
  • 2.3.8
  • 3.0.0 (0)
  • 3.0.9 (0)
  • 3.1.0
  • 3.2.1
  • 3.2.8
  • 3.2.13
  • 4.0.2
  • 4.1.8
  • 4.2.1
  • 4.2.7
  • 4.2.9
  • 5.0.0.1
  • 5.1.7
  • 5.2.3
  • What's this?
construct_counter_sql() protected

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/associations/association_collection.rb, line 382
        def construct_counter_sql
          if @reflection.options[:counter_sql]
            @counter_sql = interpolate_and_sanitize_sql(@reflection.options[:counter_sql])
          elsif @reflection.options[:finder_sql]
            # replace the SELECT clause with COUNT(*), preserving any hints within /* ... */
            @counter_sql = interpolate_and_sanitize_sql(@reflection.options[:finder_sql]).sub(/SELECT\b(\/\*.*?\*\/ )?(.*)\bFROM\b/m) { "SELECT #{$1}COUNT(*) FROM" }
          else
            @counter_sql = @finder_sql
          end
        end
Register or log in to add new notes.