У меня есть модель категорий (HABTM), которая имеет бесконечное количество категорий и подкатегорий. Раньше я запускал собственное решение, но теперь я понимаю, что мне придется использовать гем Ancestry, чтобы это работало. Когда я сделал свое собственное решение, я смог построить дерево, потому что у меня было поле с именем top_level_category, поэтому я знал, с чего начать, и parent_id, чтобы я мог найти свой путь вниз по дереву. В Ancestry есть только один столбец строкового типа, из которого можно строить. Есть ли уже решение, чтобы я мог легко визуально выбрать категорию и знать, где она находится в дереве?
Я попытался использовать гем activeadmin-sortable-tree и могу заставить его работать на странице индекса категорий, но не при добавлении новой категории.
sortable tree: true,
sorting_attribute: :name,
parent_method: :parent,
children_method: :children,
roots_method: :roots
form do |f|
f.inputs "Category", as: :sortable do
f.input :parent_id, :as => :select, :collection => ItemsCategory.all.map {|u| [u.name, u.id]}
f.input do
label :name # item content
actions
end
f.input :name
end
f.actions
f.semantic_errors
end