遍历嵌套评论的最佳方式是什么?
What's the best way to iterate through nested comments?
我的评论结构是这样的(我正在使用 acts_as_commentable_with_threading)。
评论 1 (id: 1) parent_id 为 nil 因为它不是对任何评论的回复。
评论 2 (id: 2) 的 parent_id 为 1,因为它是对评论 1 的回复,评论 1 的 ID 为 1。
评论 3 (id: 3) 的 parent_id 为 2,因为它是对评论 2 的回复。
评论 4 (id: 4) 的 parent_id 为 1,因为它是对评论 1 的回复。
加载父评论(在本例中为评论 1)的所有回复的最佳方式是什么。我可以使用多个循环,但我认为那会非常低效。对于每个回复,我都必须生成一个部分来显示该回复。
我需要一个函数,returns 父注释的所有子项及其子项的子项等
通过多个数据库查询加载嵌套集效率低下。有更好的方法来组织嵌套数据。看一看如何实现 nested set in SQL or use a gem like awesome_nested_set 允许通过一个查询加载所有节点。
我的评论结构是这样的(我正在使用 acts_as_commentable_with_threading)。
评论 1 (id: 1) parent_id 为 nil 因为它不是对任何评论的回复。 评论 2 (id: 2) 的 parent_id 为 1,因为它是对评论 1 的回复,评论 1 的 ID 为 1。 评论 3 (id: 3) 的 parent_id 为 2,因为它是对评论 2 的回复。 评论 4 (id: 4) 的 parent_id 为 1,因为它是对评论 1 的回复。
加载父评论(在本例中为评论 1)的所有回复的最佳方式是什么。我可以使用多个循环,但我认为那会非常低效。对于每个回复,我都必须生成一个部分来显示该回复。
我需要一个函数,returns 父注释的所有子项及其子项的子项等
通过多个数据库查询加载嵌套集效率低下。有更好的方法来组织嵌套数据。看一看如何实现 nested set in SQL or use a gem like awesome_nested_set 允许通过一个查询加载所有节点。