Class: INatGet::Data::Model::Place

Inherits:
INatGet::Data::Model show all
Includes:
Comparable, Identified
Defined in:
lib/inat-get/data/models/place.rb

Sequel Fields collapse

Sequel Associations collapse

Instance Method Summary collapse

Methods included from Identified

#eql?, #hash

Methods inherited from INatGet::Data::Model

endpoint, helper, manager, parser, updater

Instance Attribute Details

#admin_levelInteger?

Sequel data field

Returns:

  • (Integer, nil)


14
# File 'lib/inat-get/data/models/place.rb', line 14

set_dataset :places

#ancestorsSequel::Dataset, Array<self>

Sequel many-to-many association.

Returns:

  • (Sequel::Dataset, Array<self>)


18
# File 'lib/inat-get/data/models/place.rb', line 18

many_to_many :ancestors, class: self, join_table: :place_ancestors, left_key: :place_id, right_key: :ancestor_id

#bounding_boxString?

Sequel data field

Returns:

  • (String, nil)


14
# File 'lib/inat-get/data/models/place.rb', line 14

set_dataset :places

#cachedTime

Sequel data field

Returns:

  • (Time)


14
# File 'lib/inat-get/data/models/place.rb', line 14

set_dataset :places

#descendantsSequel::Dataset, Array<self>

Sequel many-to-many association.

Returns:

  • (Sequel::Dataset, Array<self>)


19
# File 'lib/inat-get/data/models/place.rb', line 19

many_to_many :descendants, class: self, join_table: :place_ancestors, left_key: :ancestor_id, right_key: :place_id

#display_nameString?

Sequel data field

Returns:

  • (String, nil)


14
# File 'lib/inat-get/data/models/place.rb', line 14

set_dataset :places

#geometryString?

Sequel data field

Returns:

  • (String, nil)


14
# File 'lib/inat-get/data/models/place.rb', line 14

set_dataset :places

#idInteger

Sequel data field

Returns:

  • (Integer)


14
# File 'lib/inat-get/data/models/place.rb', line 14

set_dataset :places

#latitudeFloat?

Sequel data field

Returns:

  • (Float, nil)


14
# File 'lib/inat-get/data/models/place.rb', line 14

set_dataset :places

#longitudeFloat?

Sequel data field

Returns:

  • (Float, nil)


14
# File 'lib/inat-get/data/models/place.rb', line 14

set_dataset :places

#nameString

Sequel data field

Returns:

  • (String)


14
# File 'lib/inat-get/data/models/place.rb', line 14

set_dataset :places

#observationsSequel::Dataset, Array<INatGet::Data::Model::Observation>

Sequel many-to-many association.

Returns:



16
# File 'lib/inat-get/data/models/place.rb', line 16

many_to_many :observations, class: :'INatGet::Data::Model::Observation', join_table: :observation_places, left_key: :place_id, right_key: :observation_id

#place_typeInteger?

Sequel data field

Returns:

  • (Integer, nil)


14
# File 'lib/inat-get/data/models/place.rb', line 14

set_dataset :places

#projectsSequel::Dataset, Array<INatGet::Data::Model::Project>

Sequel many-to-many association.

Returns:



21
# File 'lib/inat-get/data/models/place.rb', line 21

many_to_many :projects, class: :'INatGet::Data::Model::Project', join_table: :project_included_places, left_key: :place_id, right_key: :project_id

#slugString?

Sequel data field

Returns:

  • (String, nil)


14
# File 'lib/inat-get/data/models/place.rb', line 14

set_dataset :places

#uuidString?

Sequel data field

Returns:

  • (String, nil)


14
# File 'lib/inat-get/data/models/place.rb', line 14

set_dataset :places

Instance Method Details

#<=>(other) ⇒ Object



25
26
27
28
29
# File 'lib/inat-get/data/models/place.rb', line 25

def <=> other
  return nil unless other.is_a?(INatGet::Data::Model::Place)
  return 0 if self.id == other.id
  (self.display_name || self.name || self.slug) <=> (other.display_name || other.name || other.slug)
end