Sha256: d9e0f88d46ed6161d620c3ba033c31bddb5cbb5cc09a9ebaa4b6548a0d8d12dd

Contents?: true

Size: 544 Bytes

Versions: 3

Compression:

Stored size: 544 Bytes

Contents

#require 'ostruct'

Mongoid::Fields.option :spatial do |model,field,options|
  options = {} unless options.kind_of?(Hash)
  # x_meth = options[:x] || :x
  # y_meth = options[:y] || :y

  # model.instance_eval do # wont work
  # #   define_method "near_#{field.name}" do |*args|
  # #     self.where(field.name => args)
  # #   end
  # end

  model.class_eval do
    (self.spatial_fields ||= []) << field.name.to_sym
  #   define_method "distance_from_#{field.name}" do |*args|
  #     self.distance_from(field.name, *args)
  #   end
  end

end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
mongoid_geospatial-2.5.1 lib/mongoid_geospatial/field_option.rb
mongoid_geospatial-2.5.0 lib/mongoid_geospatial/field_option.rb
mongoid_geospatial-2.3.0 lib/mongoid_geospatial/field_option.rb