Class: RubyCms::Generators::AdminPageGenerator::Field

Inherits:
Struct
  • Object
show all
Defined in:
lib/generators/ruby_cms/admin_page_generator.rb

Overview

Value object for a scaffolded column.

Instance Attribute Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#nameObject

Returns the value of attribute name

Returns:

  • (Object)

    the current value of name



115
116
117
# File 'lib/generators/ruby_cms/admin_page_generator.rb', line 115

def name
  @name
end

#typeObject

Returns the value of attribute type

Returns:

  • (Object)

    the current value of type



115
116
117
# File 'lib/generators/ruby_cms/admin_page_generator.rb', line 115

def type
  @type
end

Instance Method Details

#boolean?Boolean

Returns:

  • (Boolean)


131
# File 'lib/generators/ruby_cms/admin_page_generator.rb', line 131

def boolean? = type == :boolean

#form_input(form_var) ⇒ Object



118
119
120
121
122
123
124
125
126
127
128
129
# File 'lib/generators/ruby_cms/admin_page_generator.rb', line 118

def form_input(form_var)
  case type
  when :text                   then "#{form_var}.text_area :#{name}, rows: 4"
  when :integer                then "#{form_var}.number_field :#{name}"
  when :decimal, :float        then "#{form_var}.number_field :#{name}, step: \"any\""
  when :boolean                then "#{form_var}.check_box :#{name}"
  when :date                   then "#{form_var}.date_field :#{name}"
  when :datetime, :timestamp   then "#{form_var}.datetime_field :#{name}"
  when :time                   then "#{form_var}.time_field :#{name}"
  else                              "#{form_var}.text_field :#{name}"
  end
end

#labelObject



116
# File 'lib/generators/ruby_cms/admin_page_generator.rb', line 116

def label = name.to_s.humanize