Выбор между категорией, а затем многими подкатегориями

У меня есть вопрос, я постараюсь объяснить.

Я хочу построить классификацию, которая обеспечивает такие функции. У меня есть какая-то большая категория оборудования для переработки отходов, подкатегории, такие как измельчители, тогда у меня снова есть подкатегории.

Я хочу построить систему категоризации, которая позволяет при создании нового продукта выбирать такой маршрут по категориям.

Я хочу знать, как лучше всего предоставить такую ​​функцию моему приложению?

Какие-либо предложения?

actions_as_taggable предоставляют такие функции?

Спасибо!

1 ответ

Решение

Я использовал драгоценное происхождение для подобных целей. Это, по крайней мере, обеспечит поддержку на уровне модели для древовидной структуры, о которой вы говорите.

RailsCasts сделал учебник об этом.

Чтобы играть с родословной, я бы рекомендовал использовать rails consoleНапример, вот так:

# category.rb

class Category < ActiveRecord::Base
  attr_accessor :name, :parent
  has_ancestry
end

# rails console

~/Rails/CTK/jwbc[master] $ rails console
Loading development environment (Rails 3.2.11)
1.9.3p286 > main = Category.create(name: "Main category")
# => created
1.9.3p286 > sub1 = Category.create(name: "First subcategory", parent: main)
# => created
1.9.3p286 > sub2 = Category.create(name: "Sub-subcategory"), parent: sub1)
# => created
1.9.3p286 > main.children
# => Would return sub1
1.9.3p286 > main.descendants
# => Returns sub1 and sub2
1.9.3p286 > Category.at_depth(1)
# => Returns all subcategories, in this case sub1
Другие вопросы по тегам