랭킹 시스템 (스타팅 영화, 제품 등)의 남용을 방지하고 실제로 그것을 구현하는 방법에 대한 몇 가지 질문을 보았습니다. 이 질문을 단순화하기 위해 보안은 나에게 관심사가 아니며이 시스템에 액세스하는 사람들은 모두 신뢰할 수 있으며 순위 시스템을 악용하는 경우 일어나는 일은 사소한 일보다 쉽게 되돌릴 수 있습니다. 어쨌든, 투표를 저장하는 방법이 궁금합니다.랭킹 시스템 구현
하나의 생각은 각 투표를 기록한 다음 즉시, 예정된 시간에 또는 제품의 모든 부하 (이 방법은 비효율적 인 것 같지만 그렇지 않을 수도 있음)를 기록하고 투표가 집계되고 두 배 0 - 5 사이의 값은 제품 테이블의 제품 항목으로 업데이트됩니다.
또는 총 점수와 투표 수를 제품 테이블에 저장하고 표시 할 때이를 나눕니다. 그리고 누군가 투표 할 때 투표를 합계 및 증가 수에 추가하십시오.
아니면 더 나은 방법이 있나요? 나는 제품 테이블에 '등급'필드를 그냥 갖고 싶지만 추가 데이터없이 투표를 업데이트하는 방법을 생각할 수는 없습니다.
다시 말해서 데이터 무결성은 중요하지만 어떠한 생각으로도 필요하지는 않습니까?
이것은 당신에게 중요 할 수 있습니다 : http://www.evanmiller.org/how-not-to-sort-by-average-rating.html – Svante