Sha256: 82075c6f08227199aa3b4880ef49cebc140c21d259b8afddc2cc140c842b1376
Contents?: true
Size: 1.18 KB
Versions: 2
Compression:
Stored size: 1.18 KB
Contents
# encoding: utf-8 module ConstructorPages # Template model. Template allows assing different design for pages. # # Templates has many fields. # For example: # template "Product" should has fields like "price", "description", "size" etc. class Template < ActiveRecord::Base # Adding code_name_uniqueness method include CodeNameUniq validates_presence_of :name, :code_name validates_uniqueness_of :code_name validate :code_name_uniqueness default_scope -> { order :lft } has_many :pages, dependent: :destroy has_many :fields, dependent: :destroy acts_as_nested_set # Return child corresponding child_id or children first def child if child_id self.class.find(child_id) else children.first if !leaf? end end # Convert name to accusative def to_accusative self.name.mb_chars.downcase.to_s.accusative end private # Check if there is code_name in same branch def check_code_name(cname) [cname.pluralize, cname.singularize].each {|name| return false if root.descendants.map{|t| t.code_name unless t.code_name == cname}.include?(name)} true end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
constructor-pages-0.7.9 | app/models/constructor_pages/template.rb |
constructor-pages-0.7.8 | app/models/constructor_pages/template.rb |