Class: Cms::Section::BlockBase
- Inherits:
-
Object
- Object
- Cms::Section::BlockBase
show all
- Defined in:
- app/models/cms/section/block_base.rb
Class Method Summary
collapse
Class Method Details
.inherited(subclass) ⇒ Object
Each subclass gets its own independent schema array
7
8
9
10
|
# File 'app/models/cms/section/block_base.rb', line 7
def self.inherited(subclass)
super
subclass.instance_variable_set(:@_settings_schema, [])
end
|
.kind ⇒ Object
27
28
29
|
# File 'app/models/cms/section/block_base.rb', line 27
def self.kind
raise NotImplementedError, "#{self} must define .kind"
end
|
.settings_field(name, type:, required: false, default: nil, options: nil) ⇒ Object
12
13
14
15
16
17
18
19
20
21
|
# File 'app/models/cms/section/block_base.rb', line 12
def self.settings_field(name, type:, required: false, default: nil, options: nil)
@_settings_schema ||= []
@_settings_schema << {
name: name.to_s,
type: type,
required: required,
default: default,
options: options
}.compact
end
|
.settings_schema ⇒ Object
23
24
25
|
# File 'app/models/cms/section/block_base.rb', line 23
def self.settings_schema
@_settings_schema || []
end
|