Class: Ramaze::InstanceForm

Inherits:
Form show all
Defined in:
lib/ramaze/helper/sequel_form.rb

Overview

Form for instances of the model class

Constant Summary

Constants inherited from Form

Form::DATE_GENERIC, Form::TIME_GENERIC

Instance Attribute Summary

Attributes inherited from Form

#object, #options

Instance Method Summary collapse

Methods inherited from Form

#field_for, #initialize, pick, #to_s

Constructor Details

This class inherits a constructor from Ramaze::Form

Instance Method Details

#args_for(hash) ⇒ Object



274
275
276
277
# File 'lib/ramaze/helper/sequel_form.rb', line 274

def args_for(hash)
  name = hash[:name]
  [ name, @object.send(name) ]
end

#field_boolean(name, value) ⇒ Object

<input type=“checkbox” …



240
241
242
243
244
245
246
# File 'lib/ramaze/helper/sequel_form.rb', line 240

def field_boolean(name, value)
  if value
    checkbox :name => name, :value => value, :checked => :checked
  else
    checkbox :name => name, :value => value
  end
end

#field_date(name, value) ⇒ Object



248
249
250
251
252
253
254
# File 'lib/ramaze/helper/sequel_form.rb', line 248

def field_date(name, value)
  field_date_generic do |sel, range|
    [ "<select name='#{name}[#{sel}]'>",
      option_range_selected(range, value.send(sel)),
      "</select>" ]
  end
end

#field_input(name, value) ⇒ Object

returns <input type=‘text’ name=‘name’ value=‘value’ />



223
224
225
# File 'lib/ramaze/helper/sequel_form.rb', line 223

def field_input(name, value)
  "<input type='text' name='#{name}' value='#{value}'/>"
end

#field_integer(name, value) ⇒ Object

returns <input type=“text” name=“name” value=“value” />



235
236
237
# File 'lib/ramaze/helper/sequel_form.rb', line 235

def field_integer(name, value)
  field_input(name, value)
end

#field_textarea(name, value) ⇒ Object

returns <textarea name=‘name’>#value</textarea>



229
230
231
# File 'lib/ramaze/helper/sequel_form.rb', line 229

def field_textarea(name, value)
  "<textarea name='#{name}'>#{value}</textarea>"
end

#field_time(name, value) ⇒ Object



256
257
258
259
260
261
262
# File 'lib/ramaze/helper/sequel_form.rb', line 256

def field_time(name, value)
  field_time_generic do |sel, range|
    [ "<select name='#{name}[#{sel}]'>",
      option_range_selected(range, value.send(sel)),
      "</select>" ]
  end
end

#object_classObject

Class for @object, atm Sequel specific?



280
281
282
# File 'lib/ramaze/helper/sequel_form.rb', line 280

def object_class
  @object.class
end

#option_range_selected(range, value) ⇒ Object



264
265
266
267
268
269
270
271
272
# File 'lib/ramaze/helper/sequel_form.rb', line 264

def option_range_selected(range, value)
  range.map do |r|
    if r == value
      option(r, :value => r, :selected => :selected)
    else
      option(r, :value => r)
    end
  end
end