Farmbot-Web-App/app/models/device.rb

32 lines
744 B
Ruby

# FarmbotDevice models all data related to an actual FarmBot in the real world.
# This is useful for caching things like SkyNey IDs, owner users, work logs, etc
class Device
include Mongoid::Document
has_many :users
has_many :schedules, dependent: :destroy
has_many :sequences
has_many :plants, dependent: :destroy
has_one :planting_area
# The SkyNet UUID of the device
field :uuid
validates :uuid, presence: true
# The SkyNet Authentication token for the device
field :token
validates :token, presence: true
# The 'Friendly Name' of the device. I recommend 'The Cabbage Patch Kid'
field :name
validates :name, presence: true
def if_not_null
yield(self)
self
end
def if_null
self
end
end