使ActiveAdmin选择树结构中的输入显示

时间:2014-05-29 21:52:47

标签: ruby-on-rails tree activeadmin ancestry

我有一个类别模型(HABTM),它具有无限数量的类别和子类别。我之前正在推出自己的解决方案,但我现在意识到我将不得不使用Ancestry gem来实现这一目标。当我做自己的解决方案时,我能够构建一个树,因为我在我的top_level_category中有一个字段,所以我知道从哪里开始和一个parent_id所以我可以找到我的方式在树上。使用Ancestry,只需要构建一个字符串类型列。是否已经有解决方案,以便我可以轻松地在视觉上选择一个类别并知道它在树中的位置?

我尝试过activeadmin-sortable-tree gem,可以让它在类别索引页面上工作,但在添加新类别时则不行。

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

1 个答案:

答案 0 :(得分:0)

我没有得到您想要的内容,但是如果您想根据树对表单中的select集合进行分组,请尝试以下方法:option_groups_from_collection_for_select

查看更多:http://apidock.com/rails/ActionView/Helpers/FormOptionsHelper/option_groups_from_collection_for_select