想象一下,我有两个模型:
foo and bar。
我有一个页面,我显示X项目(用kaminari分页)。
这些项目将是foo和bar的组合。
所以我需要检索一个由created_at命令的X项目数组。
想象一下,foo有25个项目,而bar只有10个。
我要10个项目,我需要由created_at订购的前10个项目。也许有7 foo和3 bar混合在一起。
我知道我可以检索并合并它们,但问题是如果我要求10 foo和10 bar,按日期排序并获得前10个。如果我要求第2页,我将丢失物品。< / p>
也许我问得太多,但是要求第1页,检索10项foo / bar mix,请求第2页,以及同样的东西。也许我需要第三张桌子?
想法? :)
答案 0 :(得分:0)
您可以创建一个视图,它是两个表的组合。然后查询该表中的前10个记录。看看这个宝石:https://rubygems.org/gems/rails_sql_views。
如果这些是类似的概念,您实际上可以使用一个表和两个具有单表继承的模型。