This page looks best with JavaScript enabled
⚠️

この記事は1年以上前に書かれました。内容が古くなっている可能性がありますのでご注意ください。

【Awesome Nested Set】レコードの位置を動かすメソッドまとめ

 ·   ·  ☕ 1 分で読めます
✏️

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

Share on

END
END
@aiandrox

目次