Awesome Nested Setはツリー構造を表すことのできるgemの1つです。
インスタンスメソッドのまとめは下記ページにまとまっています。
Awesome nested set cheat sheet
まとめ
ちなみに、→→→→→という流れなので、左=上、右=下という順番です。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
# 1つ左に移動
# レコードが既に一番左の場合は、ActiveRecord::RecordNotFound になる
my_cat.move_left
# 1つ右に移動
# レコードが既に一番右の場合は、ActiveRecord::RecordNotFound になる
my_cat.move_right
# 指定したレコードの左に移動
# 元の位置と階層が違っても移動できる
my_cat.move_to_left_of(obj)
# 指定したレコードの右に移動
# 元の位置と階層が違っても移動できる
my_cat.move_to_right_of(obj)
# 指定したレコードの子階層に移動
# 子の中の一番右に移動する
my_cat.move_to_child_of(obj)
# 一番上の階層に移動する
# 一番上の階層の中で一番右に移動する
my_cat.move_to_root
# Position should be :child, :left, :right or :root
my_cat.move_to(obj, position)
|
参考:https://github.com/collectiveidea/awesome_nested_set/blob/master/lib/awesome_nested_set/model/movable.rb