我有一个类别模型(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
答案 0 :(得分:0)
我没有得到您想要的内容,但是如果您想根据树对表单中的select集合进行分组,请尝试以下方法:option_groups_from_collection_for_select