我曾经看到过几个关于如何确保和防止滥用排名系统(如凝视电影,产品等)的问题,但实际上并没有实现它。为了简化这个问题,安全性并不是我关心的问题,访问这个系统的人都是可信的,如果发生这种情况,滥用排名系统是微不足道的,而且更易于恢复。无论如何,我很好奇如何存储选票。实现排名系统
一个想法是拥有一张投票表,记录每张投票,然后立即在预定时间或产品的每个负载(这看起来效率低,但也许不是)投票结果和一个双在0到5之间更新到产品表中的产品条目中。
或者,我在产品表中存储总分数和投票数,并在显示时将其分开,并在有人投票时将投票添加到总数和增加数。
或者还有更好的方法来做到这一点,我没有?我希望在产品表中只有'评分'字段,但不能想到在没有额外数据的情况下更新投票的方式。
同样,数据完整性很重要,但绝不是必要的,任何想法?
这可能是你感兴趣的:http://www.evanmiller.org/how-not-to-sort-by-average-rating.html – Svante 2009-06-29 10:53:19