gpt4 book ai didi

ruby-on-rails - 树菜单的acts_as_tree vs 祖先 gem

转载 作者:行者123 更新时间:2023-12-01 08:36:50 47 4
gpt4 key购买 nike

关闭。这个问题是opinion-based .它目前不接受答案。












想改善这个问题吗?更新问题,以便可以通过 editing this post 用事实和引文回答问题.

6年前关闭。




Improve this question




我想在我正在开发的 Rails 应用程序中实现树形菜单 ( simple example of tree menu )。我不确定是使用acts_as_tree 还是Ancestry。看起来使用acts_as_tree 实现一个简单的树形菜单会更容易,但是,Ancestry 更受欢迎并且定期维护。有没有人对此有任何想法?

最佳答案

使用血统。它实现了materialized path pattern,具有更强大的查询能力。 ,而不是实现 adjacency list 的acts_as_tree .
还有其他选项,如嵌套集,但物化路径通常是最全面的。

https://communities.bmc.com/communities/docs/DOC-9902

如果您需要在 DB 级别按预排序排序(例如分页树网格、根据树中的深度进行迭代和缩进/缩进以进行显示的预加载菜单),您需要使用递归查询或可排序编码像嵌套集或嵌套间隔。 (也就是说,如果在内存中排序不是一种选择,而且几乎从来都不是。)

https://github.com/collectiveidea/awesome_nested_set
https://github.com/clyfe/acts_as_nested_interval

每个都有起起落落。选择适合你的。

关于ruby-on-rails - 树菜单的acts_as_tree vs 祖先 gem ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8835178/

47 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com