我正在使用Ruby(Ruby on Rails)并拥有一组约2000个节点的嵌套。每个节点只能有两个孩子。
确定每个级别中有多少个节点的最佳方法是什么?我是否必须抓住整棵树寻找兄弟姐妹才能做到这一点?
谢谢!
答案 0 :(得分:1)
在ActiveRecord中有一个名为counter_cache的属性,它专门针对此类情况而完成。查看Ryan Bates的Counter Cache Column截屏视频。
答案 1 :(得分:0)
我实际上想出了一个“快速”的方法来做到这一点。使用此页面上的“子树的深度”中的段(link text)我使用给定的SQL与find_by_sql轮询深度。然后我迭代返回的模型结果并计算每个深度值出现的次数。效果很好!感谢所有人的期待和帮助!