使用closure_tree表示Rails中的有序列表

时间:2013-05-07 21:22:43

标签: ruby-on-rails-3 list gem

使用closure_tree gem表示有序列表是否可取?例如这个Rails模型:

class OrderedSet < ActiveRecord::Base
  acts_as_tree, order: 'position' #order is a supported option
end

我的想法:

  • 代表订购可能很方便 字典,因为gem可以生成哈希树。
  • 也许有时你只想要一份树木清单?随机例子:手臂中的神经细胞的中心链,神经元沿着它分支出来

2 个答案:

答案 0 :(得分:1)

我是closure_tree的作者。

如果订单列为数字,如果您使用添加到模型类的append_siblingprepend_sibling方法,则position值将从0..siblings.count重新排序。无需使用其他gem - 我必须依赖特定的排序规则才能使大部分范围正确排序。

答案 1 :(得分:0)

在使用gem之后,我意识到它并没有直接改变position的顺序,因此它要求我们使用自己的功能来设置该列。

基本上:要表示列表,请使用acts_as_list gem或其他选项。要将有序列表与树的节点结合使用,请使用两个gem。 (他们应该兼容,但我不确定)