awesome_nested_setをRails 3で使用して、階層型カテゴリシステムを作成しました。私はレベルごとのレベルで、アルファベット順にカテゴリを注文しようとしてるカテゴリをメニューからアルファベット順に選択するawesome_nested_set
<%= form.select :parent_id, options_for_select(nested_set_options(Category, @category) {|i| "#{'-' * i.level} #{i.name}" }.unshift(["No Parent", nil]), @category.parent_id) %>
:ビューのカテゴリセレクタを表示するには、私は次のコードを使用しました。 nested_set_options(Category, @category)
をnested_set_options(Category.order("name"), @category)
に変更すると、カテゴリ全体のリストが名前順に並べ替えられます。私がやりたいことは、各ノードの子をアルファベット順に並べ替えることです。
例えば、私はこのように注文するための選択メニューを結果にしたい:
Animal
- Bird
-- Chicken
-- Hawk
- Fish
-- Cod
-- Goldfish
-- Trout
- Mammal
-- Cat
-- Primate
--- Chimpanzee
--- Human
-- Zebra
Plant
- Tree
この記事以来、私たちは、データ操作を扱う際に、デフォルトのスコープに順序を使用する際の難しさを実現しています。 – efoo