我有一个API端点/videos/:id/feedback
,需要返回按时间顺序混合的评论列表(评论模型)和评论(评论模型)。
到目前为止,API一直基于单一资源的主键对结果进行分页,例如:
/users?after=3&limit=3
=> [4,5,6]
/users?after=6&limit=3
=> [7,8,9]
如何返回由created_at
混合的两种资源类型,并能够对这些结果进行分页?
更新
我已经确定一个选项是使用单表继承。
我可以拥有一个带有类型列的comments
表,而不是单独的reviews
和feedback
表。然后,Comment和Review模型都将从Feedback模型继承。
这将解决混合和分页问题。但是,评论和评论只有两个或三个共同的属性,六个或更多的属性并不常见,所以我不愿意与STI一起使用,因为感觉这是一种丑陋的方式。
我想知道是否有替代/更清洁和更开发人员友好的方式来实现这一目标。