Сделать ActiveAdmin выбрать отображение ввода в древовидной структуре

У меня есть модель категорий (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

person isea    schedule 29.05.2014    source источник


Ответы (1)


Я не понимаю, что вы хотите, но если вы хотите сгруппировать коллекцию select в форме в соответствии с деревом, попробуйте следующее: option_groups_from_collection_for_select

См. Подробнее: http://apidock.com/rails/ActionView/Helpers/FormOptionsHelper/option_collection_groups_from_select / а>

person nistvan    schedule 30.05.2014