lib/arxutils_sqlite3/hier.rb in arxutils_sqlite3-0.1.61 vs lib/arxutils_sqlite3/hier.rb in arxutils_sqlite3-0.1.63
- old
+ new
@@ -25,11 +25,11 @@
# 階層処理を付加したいフィールド名
@field_name = field_name
# '/'が区切り文字の文字列で階層処理を実現するクラスの階層構造を表す文字列を持つメソッド/アトリビュートを表すシンボ
@hier_symbol = hier_symbol
# '/'が区切り文字の文字列で階層処理を実現するクラスのクラス名(DB中のテーブルに対応するActiveRecordの子クラス)
- @base_klass = base_klass
+ @base_klass = base_klass
# '/'が区切り文字の文字列で階層処理を実現するクラスのカレントに対応するクラス名(DB中のテーブルに対応するActiveRecordの子クラス)
@current_klass = current_klass
# '/'が区切り文字の文字列で階層処理を実現するクラスのインバリッドに対応するクラス名(DB中のテーブルに対応するActiveRecordの子クラス)
@invalid_klass = invalid_klass
# IDの親子関係で階層処理を実現するクラス名(DB中のテーブルに対応するActiveRecordの子クラス)
@@ -72,14 +72,14 @@
# srcが子である(tblでは項目を一意に指定できる)tblでの項目を得る
src_row = @hire_klass.find_by(child_id: src_num)
dest_parent_row_item = @base_klass.find_by(name: dest_parent_hier)
dest_parent_num = if dest_parent_row_item
- dest_parent_row_item.id
- else
- register(dest_parent_hier)
- end
+ dest_parent_row_item.id
+ else
+ register(dest_parent_hier)
+ end
dest_parent_level = get_level_by_child(dest_parent_num)
# srcの親をdest_parentにする
src_row.parent_id = dest_parent_num
src_row.save
@@ -96,19 +96,19 @@
# 配列で指定した階層を親の階層としてhier_klassに登録
def register_parent(hier_ary, child_num, level)
hier_ary.pop
parent_hier_ary = hier_ary
- parent_hier = parent_hier_ary.join('/')
+ parent_hier = parent_hier_ary.join("/")
parent_num = register(parent_hier)
hs = { parent_id: parent_num, child_id: child_num, level: level }
@hier_klass.create(hs)
end
# 文字列で指定した階層(/を区切り文字として持つ)をhier_klassに登録
def register(hier)
- hier_ary = hier.split('/')
+ hier_ary = hier.split("/")
level = get_level_by_array(hier_ary)
# もしhier_aryがnilだけを1個持つ配列、または空文字列だけを1個もつ配列であれば、hier_nameは空文字列になる
item_row = @current_klass.find_by({ @hier_symbol => hier })
if item_row
@@ -185,11 +185,11 @@
level
end
# 階層を表すデータ構造から階層の名前を得る
def get_name(items_row)
- items_row ? items_row.name.split('/').pop : ''
+ items_row ? items_row.name.split("/").pop : ""
end
# 階層を表すデータ構造で指定された階層の下部階層の名前を調整する
def hier_adjust(base)
parent_hier_string = base.__send__ @hier_symbol
@@ -224,9 +224,9 @@
@hier_klass.find_by(child_id: num).level
end
# 文字列で指定された親の階層の下の子の名前から、子の名前を作成
def make_hier(parent_hier, name)
- [parent_hier, name].join('/')
+ [parent_hier, name].join("/")
end
end
end