我是新手,我正在玩这个宝石。我在数据库中有一个树形结构。但是现在我正在苦苦挣扎,如何在第一级获得项目声明......或者在第一级或第二级的计数项目...
有人可以帮我解决这个问题吗? 我在GitHub上找到了这个循环的项目声明:
Category.each_with_level(Category.root.self_and_descendants) do |category, level|
...
end
但我仍然不知道,如何使用它...我会为每一个提示感到高兴!
非常感谢
答案 0 :(得分:1)
您可以遍历所有类别并计算第1级的项目。
在Rails控制台中尝试以下操作:
count = 0
Category.each_with_level(Category.all) do |account, level|
count += 1 if level == 1
end
puts count
要打印项目,您可以试试这个:
Category.each_with_level(Category.all) do |account, level|
puts "#{level} - #{category.name}"
end
答案 1 :(得分:0)
如果您添加了可选的depth
字段,则可以通过以下方式获得结果:
count = Category.where(depth: 1).count