Class | ItemPlural
In: | app/models/item_plural.rb
Parent: | Item

複数の構成要素をもつ項目のモデル。

### Methods

calendar? checkbox? data_method_name datum_class human_name order picker_field required? set_attributes to_data type_name

### Included Modules

Condition

### Public Instance methods

calendar?()

カレンダー参照を行うかどうかを判定する。

[Source]

         # File app/models/item_plural.rb, line 128
    128:   def calendar?
    129:     false
    130:   end

checkbox?()

checkbox 形式を利用するかどうか判定する。

[Source]

         # File app/models/item_plural.rb, line 133
    133:   def checkbox?
    134:     false
    135:   end

data_method_name()

データを返すためのメソッド名を返す。

[Source]

         # File app/models/item_plural.rb, line 143
    143:   def data_method_name
    144:     input_parameter.pluralize
    145:   end

datum_class()

データの単位となるモデルのクラスを返す。

[Source]

         # File app/models/item_plural.rb, line 138
    138:   def datum_class
    139:     input_parameter.classify.constantize
    140:   end

human_name()

ユーザーの言語での名前を返す。

[Source]

         # File app/models/item_plural.rb, line 108
    108:   def human_name
    109:     name.blank? ? column_name : name
    110:   end

order()

並び替えを指定する文字列または `false` を返す。

[Source]

         # File app/models/item_plural.rb, line 123
    123:   def order
    124:     false
    125:   end

picker_field(it, name)

[Source]

         # File app/models/item_plural.rb, line 103
    103:   def picker_field(it, name)
    104:     detail? ? "#{input_parameter}#{id}_#{name}" : "#{input_parameter}#{id}"
    105:   end

required?()

入力が必須かどうかを判定する。

[Source]

         # File app/models/item_plural.rb, line 113
    113:   def required?
    114:     validates_presence? # FIXME
    115:   end

set_attributes(x, attr)

(権限が許せば)インスタンスに属性を設定する。

[Source]

         # File app/models/item_plural.rb, line 118
    118:   def set_attributes(x, attr)
    119:     x.__send__("#{column_name}=", attr[column_name.to_sym]) if writable?
    120:   end

to_data(it)

対象 it の表示に適したデータを返す。

[Source]

         # File app/models/item_plural.rb, line 148
    148:   def to_data(it)
    149:     value = it.attributes[column_name]
    150:     arr = value.split(',').map {|id| datum_class.find(id) rescue nil}.compact
    151:     return arr.map(&:name).join(",")
    152:   end

type_name()

種類の名前を返す。

[Source]

         # File app/models/item_plural.rb, line 99
     99:   def type_name
    100:     s_("Item|Plural")
    101:   end

[Validate]