Tag:

Rails 3,什么是最好的树行为?

所以我正在寻找一个可以为页面模型带来一些树行为的gem。 从我所看到的有很多,我想知道其他人的想法。 如果有任何伟大的或狡猾的避免。 干杯。

validation和规范化部分有序集

我有一对像这样的对: [[“a”, “b”], [“b”, “d”], [“a”, “c”], [“e”, “d”], [“a”, “d”], …, [“s”, “f”]] 检查给定数组是否可以表示部分排序的有效方法是什么? 也就是说,给定数组中没有“循环”,如[“a”, “b”], [“b”, “c”], [“c”, “a”] 。 如果确认数组表示偏序,我想通过去除所有可以通过自反性或传递性导出的对来对其进行标准化。 例如,在上文中,由于存在[“a”, “b”]和[“b”, “d”] ,所以该对[“a”, “d”]是多余的,应该被移除。 1到2之间的顺序无关紧要。 如果2应该在1的过程之前或之内完成,那么,这很好。 我最好在Ruby 1.9.3中使用它,但只需伪代码即可。

用于将平面树解析为非平面树的算法

我有以下扁平树: id name parent_id is_directory =========================================================== 50 app 0 1 31 controllers 50 1 11 application_controller.rb 31 0 46 models 50 1 12 test_controller.rb 31 0 31 test.rb 46 0 我试图找出一个算法,将其纳入以下树结构: [{ id: 50, name: app, is_directory: true children: [{ id: 31, name: controllers, is_directory: true, children: [{ id: 11, name: application_controller.rb is_directory: false },{ […]

ruby中的树和图数据结构

我很难找到在ruby中使用的树数据结构。 我可以研究一些众所周知的吗? 我的要求很简单。 我想创建一个树(或者它可能是一个图形)并找到一些节点之间的距离。 例如,我可能有一个如下所示的树/图 A / \ B—–C / \ \ DEF 我希望能够找到根节点(A)和所有其他节点之间的距离。 所以(A,B)之间的距离应该是1,(A,E)之间的距离是2,等等。即使从节点(A)你可以通过(A,B,C)到达(C),长度应该是因为有(A,C)的直接路径,所以仍然只是1。 我可以在ruby中使用树/图形gem吗?

ruby如何生成树形结构表单数组?

我有一个数组,其中包含这样的项目列表 arr = [ {:id=>1, :title=>”A”, :parent_id=>nil}, {:id=>2, :title=>”B”, :parent_id=>nil}, {:id=>3, :title=>”A1″, :parent_id=>1}, {:id=>4, :title=>”A2″, :parent_id=>1}, {:id=>5, :title=>”A11″, :parent_id=>3}, {:id=>6, :title=>”12″, :parent_id=>3}, {:id=>7, :title=>”A2=121″, :parent_id=>6}, {:id=>8, :title=>”A21″, :parent_id=>4}, {:id=>9, :title=>”B11″, :parent_id=>2}, {:id=>10, :title=>”B12″, :parent_id=>2}, … ] 如果parent_id为nil那么它应该是父节点,如果parent_id不是nil则它应该在特定父节点下。 基于id和parent_id ,我想提供这样的响应: -A -A1 -A11 -A12 -A123 -A2 -A21 -B -B1 -B11 -B12 我怎么能产生上面提到的回应? 谢谢

从“strings / that / are / paths”数组构建XML树(在Ruby中)

如果你有一个字符串路径数组,在Ruby中构建XML树的最佳方法是什么? paths = [ “nodeA1”, “nodeA1/nodeB1/nodeC1”, “nodeA1/nodeB1/nodeC1/nodeD1/nodeE1”, “nodeA1/nodeB1/nodeC2”, “nodeA1/nodeB2/nodeC2”, “nodeA3/nodeB2/nodeC3” ] xml = 我的第一个想法是将路径字符串拆分为一个数组,并将其深度和内容与前一个数组进行比较,但是如果我到达路径“nodeA1 / nodeB1 / nodeC1 / nodeD1 / nodeE1”,当我回到“nodeA1 / nodeB1 / nodeC2”,[1]节点是共同的祖先,但跟踪它是混乱的,至少我这样做的方式。 我也想让它递归,所以我可以在它自己的函数中处理每个嵌套级别,但还没有达到任何半通用的解决方案。 当你遇到这个问题时,你们常常做的任何想法或事情? 谢谢! 长矛

Ruby创建递归目录树

我需要以递归方式遍历目录并创建一个与jsTree控件一起使用的树。 该控件接受像这样的JSON格式。 我需要一些ruby魔法才能让它干净而迅速地发生。 任何帮助表示赞赏。