23 lines
497 B
Ruby
23 lines
497 B
Ruby
|
|
module CouchRest::Model
|
|
module CastedBy
|
|
extend ActiveSupport::Concern
|
|
included do
|
|
self.send(:attr_accessor, :casted_by)
|
|
end
|
|
|
|
# Gets a reference to the actual document in the DB
|
|
# Calls up to the next document if there is one,
|
|
# Otherwise we're at the top and we return self
|
|
def base_doc
|
|
return self if base_doc?
|
|
@casted_by ? @casted_by.base_doc : nil
|
|
end
|
|
|
|
# Checks if we're the top document
|
|
def base_doc?
|
|
false
|
|
end
|
|
|
|
end
|
|
end
|