Module: ActiveRecordPostgresEarthdistance::QueryMethods

Defined in:
lib/activerecord-postgres-earthdistance/acts_as_geolocated.rb

Instance Method Summary collapse

Instance Method Details

#selecting_distance_from(lat, lng, name = "distance", include_default_columns = true) ⇒ Object



92
93
94
95
96
97
98
99
100
101
102
103
# File 'lib/activerecord-postgres-earthdistance/acts_as_geolocated.rb', line 92

def selecting_distance_from(lat, lng, name = "distance", include_default_columns = true)
  clone.tap do |relation|
    relation.joins!(through_table)
    values = []
    if relation.select_values.empty? && include_default_columns
      values << relation.arel_table[Arel.star]
    end
    values << Utils.earth_distance(through_table_klass, lat, lng, name)

    relation.select_values = values
  end
end