Sha256: c67231f3c597b899ff1b247ef0872c2921018517db0776e670620f26decd1c36
Contents?: true
Size: 1.05 KB
Versions: 2
Compression:
Stored size: 1.05 KB
Contents
# entity.rb require 'active_support/concern' module Taxonomite module Entity extend ActiveSupport::Concern included do has_one :taxonomy_node, class_name: 'Taxonomite::Node', as: :owner, validate: true before_save :do_setup class_eval "def base_class; ::#{self.name}; end" end def get_taxonomy_node if (self.taxonomy_node == nil) self.taxonomy_node = self.create_taxonomy_node end self.taxonomy_node end protected # classes overload to create the appropriate taxonomy_node # def create_taxonomy_node # Taxonomite::Node.new(name: self.name) # end private # subclasses should overload create_taxonomy_node to create the appropriate Place object and set it up def do_setup if (self.taxonomy_node == nil) self.taxonomy_node = self.respond_to?(:create_taxonomy_node) ? self.create_taxonomy_node : Taxonomite::Node.new(name: self.name) self.taxonomy_node.owner = self end end end # module Location end # module Places
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
taxonomite-0.2.3 | lib/taxonomite/entity.rb |
taxonomite-0.1.0 | lib/taxonomite/entity.rb |