Class: Cardboard::PagePart
- Inherits:
-
ActiveRecord::Base
- Object
- ActiveRecord::Base
- Cardboard::PagePart
- Includes:
- RankedModel
- Defined in:
- app/models/cardboard/page_part.rb
Instance Method Summary collapse
Instance Method Details
#attr(field) ⇒ Object
32 33 34 35 36 37 38 39 40 41 42 |
# File 'app/models/cardboard/page_part.rb', line 32 def attr(field) field = field.to_s @attr ||= {} @attr[field] ||= begin f = self.fields.where(identifier: field).first return nil unless f out = f.value_uid.nil? ? nil : f.value out = f.default if f.required? && out.nil? out end end |
#repeatable? ⇒ Boolean
20 21 22 |
# File 'app/models/cardboard/page_part.rb', line 20 def repeatable? template_hash[:repeatable] end |
#template ⇒ Object
28 29 30 |
# File 'app/models/cardboard/page_part.rb', line 28 def template template_hash[:fields] end |
#template_hash ⇒ Object
24 25 26 |
# File 'app/models/cardboard/page_part.rb', line 24 def template_hash @template ||= self.page.template.fields[self.identifier.to_sym] end |