Class: AbAdmin::Models::TypeModel
- Inherits:
-
Object
- Object
- AbAdmin::Models::TypeModel
show all
- Includes:
- EnumField::DefineEnum
- Defined in:
- lib/ab_admin/models/type_model.rb
Instance Attribute Summary collapse
Class Method Summary
collapse
Instance Method Summary
collapse
Constructor Details
#initialize(code) ⇒ TypeModel
Returns a new instance of TypeModel.
12
13
14
|
# File 'lib/ab_admin/models/type_model.rb', line 12
def initialize(code)
@code = code.to_sym
end
|
Instance Attribute Details
Returns the value of attribute code.
6
7
8
|
# File 'lib/ab_admin/models/type_model.rb', line 6
def code
@code
end
|
Class Method Details
.define_enum_by_codes ⇒ Object
17
18
19
20
21
22
23
24
|
# File 'lib/ab_admin/models/type_model.rb', line 17
def define_enum_by_codes
define_enum do |builder|
codes.each do |kind|
builder.member kind, object: new(kind.to_s)
end
end
define_question_methods
end
|
.define_question_methods ⇒ Object
26
27
28
29
30
31
32
|
# File 'lib/ab_admin/models/type_model.rb', line 26
def define_question_methods
codes.each do |code_check|
define_method "#{code_check}?" do
self.code == code_check
end
end
end
|
.legal?(value) ⇒ Boolean
34
35
36
37
|
# File 'lib/ab_admin/models/type_model.rb', line 34
def legal?(value)
ActiveSupport::Deprecation.warn('legal? is deprecated, use valid? instead')
valid?(value)
end
|
.valid?(c_id) ⇒ Boolean
39
40
41
|
# File 'lib/ab_admin/models/type_model.rb', line 39
def valid?(c_id)
all.map(&:id).include?(c_id.to_i)
end
|
.valid_code?(code) ⇒ Boolean
43
44
45
46
|
# File 'lib/ab_admin/models/type_model.rb', line 43
def valid_code?(code)
return unless code
codes.include?(code.to_sym)
end
|
Instance Method Details
49
50
51
52
53
|
# File 'lib/ab_admin/models/type_model.rb', line 49
def title
I18n.t!(@code, scope: i18n_scope)
rescue I18n::MissingTranslationData
@code.to_s.humanize
end
|