Module: ActiveRecord::ConnectionAdapters::Mysql2Rgeo::ColumnMethods

Included in:
TableDefinition
Defined in:
lib/active_record/connection_adapters/mysql2rgeo/column_methods.rb

Instance Method Summary collapse

Instance Method Details

#geometry(*args, multi: false, **options) ⇒ Object



10
11
12
# File 'lib/active_record/connection_adapters/mysql2rgeo/column_methods.rb', line 10

def geometry(*args, multi: false, **options)
  multi ? multi_geometry(*args, **options) : args.each { |name| column(name, :geometry, options) }
end

#geometrycollection(*args, **options) ⇒ Object Also known as: multi_geometry



14
15
16
# File 'lib/active_record/connection_adapters/mysql2rgeo/column_methods.rb', line 14

def geometrycollection(*args, **options)
  args.each { |name| column(name, :geometrycollection, options) }
end

#linestring(*args, multi: false, **options) ⇒ Object



26
27
28
# File 'lib/active_record/connection_adapters/mysql2rgeo/column_methods.rb', line 26

def linestring(*args, multi: false, **options)
  multi ? multi_linestring(*args, **options) : args.each { |name| column(name, :linestring, options) }
end

#multilinestring(*args, **options) ⇒ Object Also known as: multi_linestring



30
31
32
# File 'lib/active_record/connection_adapters/mysql2rgeo/column_methods.rb', line 30

def multilinestring(*args, **options)
  args.each { |name| column(name, :multilinestring, options) }
end

#multipoint(*args, **options) ⇒ Object Also known as: multi_point



22
23
24
# File 'lib/active_record/connection_adapters/mysql2rgeo/column_methods.rb', line 22

def multipoint(*args, **options)
  args.each { |name| column(name, :multipoint, options) }
end

#multipolygon(*args, **options) ⇒ Object Also known as: multi_polygon



38
39
40
# File 'lib/active_record/connection_adapters/mysql2rgeo/column_methods.rb', line 38

def multipolygon(*args, **options)
  args.each { |name| column(name, :multipolygon, options) }
end

#point(*args, multi: false, **options) ⇒ Object



18
19
20
# File 'lib/active_record/connection_adapters/mysql2rgeo/column_methods.rb', line 18

def point(*args, multi: false, **options)
  multi ? multi_point(*args, **options) : args.each { |name| column(name, :point, options) }
end

#polygon(*args, multi: false, **options) ⇒ Object



34
35
36
# File 'lib/active_record/connection_adapters/mysql2rgeo/column_methods.rb', line 34

def polygon(*args, multi: false, **options)
  multi ? multipolygon(*args, **options) : args.each { |name| column(name, :polygon, options) }
end

#spatial(name, options = {}) ⇒ Object



5
6
7
8
# File 'lib/active_record/connection_adapters/mysql2rgeo/column_methods.rb', line 5

def spatial(name, options = {})
  raise "You must set a type. For example: 't.spatial :object1, limit: { type: 'point' }'" if options[:limit].blank? || options[:limit][:type].blank?
  column(name, options[:limit][:type], options)
end