使用Rails的“下一个顺序”的分层数据库?

时间:2010-07-07 01:35:27

标签: ruby-on-rails database-design

我正在构建一个网站,其中包含存储在数据库中的一些有序的分层数据。有一个“卷”表,一个包含volume_id和position字段的“Book”表,以及一个包含book_id和position字段的“Chapter”表。

我想要构建的是一个遍历各个部分的浏览器。所以,如果我要渲染第2卷第1册第5节的详细信息,我想要一个“下一节”链接,按顺序显示下一节的名称。问题是我无法想出一个便宜的SQL查询,可以按顺序找出下一部分(甚至确定是否有下一部分)。

我应该如何设置表/查询以使这种查询更简单?或者有更好的方法吗?

1 个答案:

答案 0 :(得分:1)

如果你只有一个列,你将会这样做,那么我同意theIV - 一个好的树结构将是非常快速和有效的。如果您对多个列进行了排序,您实际上可以使用will_paginate并将页面大小设置为1.这样您的上一个,下一个和其他所有内容都会被烘焙。