Sha256: fbd1570be869ad01ab57cf00915c8287745d72eb62e4df47fbe02dfd0a894304
Contents?: true
Size: 609 Bytes
Versions: 1
Compression:
Stored size: 609 Bytes
Contents
module KnowledgeBase::Concerns::Models::Sectionables::Sectionable extend ActiveSupport::Concern included do extend Enumerize def self.inherited(child) model_name = snake_case_class_name child.name styles = KnowledgeBase.config.section_styles[model_name] || [ ] child.enumerize :style, in: styles super end self.abstract_class = true def to_s self.class.model_name.human end private def self.snake_case_class_name(class_name) class_name.gsub("KnowledgeBase::Sectionables::", "").underscore.gsub("/", "_").to_sym end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
knowledge_base-0.2.0 | lib/knowledge_base/concerns/models/sectionables/sectionable.rb |