我正在尝试根据投票(在Ruby on Rails上)构建排名列表
我没有排名和增量值。 我的桌子有~300条记录
post id, votes, ranking, increment
1, 22, 1, +3
2, 16, 2, -1
3, 13, 3, +6
4, 7, 4, -2
我对如何构建增量部分感到困惑,比如,根据之前的位置上升或下降了多少个位置。
我想知道如何构建它
我应该使用每天/每小时运行的cron
作业来更新基于投票的增量排名吗?
如何计算排名和增量?我应该有prev_ranking列而不是增量吗?
由于
答案 0 :(得分:2)
您可以做的一个建议是使用像Resque这样的后台任务库来排队作业,并使用Resque scheduler来在后台运行
有了这个,你可以做每日/每小时任务来查看当前排名,根据新投票计算新排名,然后找出新排名与当前排名之间的差异以获得排名变化