Class: ActiveScaffold::Config::Form

Inherits:
Base show all
Defined in:
lib/active_scaffold/config/form.rb

Direct Known Subclasses

Create, Update

Constant Summary collapse

@@persistent =
false
@@refresh_list =
false

Instance Attribute Summary collapse

Attributes inherited from Base

#action_group, #core, #formats, #user

Instance Method Summary collapse

Methods inherited from Base

#crud_type, inherited, #label

Methods included from ActiveScaffold::Configurable

#configure, #method_missing

Constructor Details

#initialize(core_config) ⇒ Form

Returns a new instance of Form.



3
4
5
6
7
8
9
10
11
# File 'lib/active_scaffold/config/form.rb', line 3

def initialize(core_config)
  super
  @show_unauthorized_columns = self.class.show_unauthorized_columns
  @refresh_list = self.class.refresh_list
  @persistent = self.class.persistent

  # no global setting here because multipart should only be set for specific forms
  @multipart = false
end

Dynamic Method Handling

This class handles dynamic methods through the method_missing method in the class ActiveScaffold::Configurable

Instance Attribute Details

#label=(value) ⇒ Object (writeonly)

the label for this Form action. used for the header.



36
37
38
# File 'lib/active_scaffold/config/form.rb', line 36

def label=(value)
  @label = value
end

the ActionLink for this action



33
34
35
# File 'lib/active_scaffold/config/form.rb', line 33

def link
  @link
end

#multipart=(value) ⇒ Object (writeonly)

whether the form should be multipart



57
58
59
# File 'lib/active_scaffold/config/form.rb', line 57

def multipart=(value)
  @multipart = value
end

#persistentObject

whether the form stays open after a create or not



39
40
41
# File 'lib/active_scaffold/config/form.rb', line 39

def persistent
  @persistent
end

#refresh_listObject

whether we should refresh list after create or not



42
43
44
# File 'lib/active_scaffold/config/form.rb', line 42

def refresh_list
  @refresh_list
end

#show_unauthorized_columnsObject

show value of unauthorized columns instead of skip them



30
31
32
# File 'lib/active_scaffold/config/form.rb', line 30

def show_unauthorized_columns
  @show_unauthorized_columns
end

Instance Method Details

#columnsObject

provides access to the list of columns specifically meant for the Form to use



45
46
47
48
49
50
51
52
# File 'lib/active_scaffold/config/form.rb', line 45

def columns
  unless @columns # lazy evaluation
    self.columns = @core.columns._inheritable
    columns.exclude :created_on, :created_at, :updated_on, :updated_at, :as_marked
    columns.exclude *@core.columns.collect { |c| c.name if c.polymorphic_association? }.compact
  end
  @columns
end

#multipart?Boolean

Returns:

  • (Boolean)


58
59
60
# File 'lib/active_scaffold/config/form.rb', line 58

def multipart?
  @multipart ? true : false
end