class Ezframe::ColumnSetCollection
ColumnSetを複数組み合わせて扱う
Attributes
colset_list[RW]
Public Class Methods
new(default_table=nil)
click to toggle source
# File lib/ezframe/column_set.rb, line 134 def initialize(default_table=nil) @colset_h = {} @default_table = default_table end
Public Instance Methods
[](k)
click to toggle source
# File lib/ezframe/column_set.rb, line 180 def [](k) return get(k) end
get(colset_key, col_key=nil)
click to toggle source
# File lib/ezframe/column_set.rb, line 163 def get(colset_key, col_key=nil) if col_key.nil? if colset_key.to_s.index(".") colset_key, col_key = colset_key.to_s.split(".") elsif @default_table colset_key, col_key = @default_table, colset_key else EzLog.error "ColumnSetCollection.get: illegal arguments: #{colset_key}, #{col_key}" return nil end end colset = @colset_h[colset_key.to_sym] return nil unless colset # EzLog.debug("Collection.get: colset_key=#{colset_key}, col_key=#{col_key}, value=#{colset[col_key].value}") return colset[col_key] end
set_values(data)
click to toggle source
# File lib/ezframe/column_set.rb, line 144 def set_values(data) data.each do |key, value| if key.to_s.index(".") table_key, col_key = key.to_s.split(".") colset = @colset_h[table_key.to_sym] unless colset @colset_h[table_key.to_sym] = colset = ColumnSets[table_key] end elsif @default_table col_key = key colset = @colset_h[@default_table.to_sym] unless colset @colset_h[table_key.to_sym] = colset = ColumnSets[@default_table] end end colset[col_key].value = value end end
values=(data)
click to toggle source
# File lib/ezframe/column_set.rb, line 139 def values=(data) @colset_h.each {|key, colset| colset.clear } set_values(data) end