桑娅* 发布9月27日 分享 发布9月27日 (编辑) 数据库中的评级和评论和分类有点混乱评价最高. 表中有5个字段cms_custom_database_X与评论和评级相关的: rating_real rating_hits rating_value rating_reviews record_rating 根据我们在数据库中允许的内容,它们是否被填充。 案例1:数据库允许星级评分(没有评论) rating_real- >不习惯 Rating_hits ->投票数 Rating_value ->总星数(例如1x4+2x5 = 14) rating_reviews- >不习惯 Record_rating ->平均星星数 案例2:数据库允许评论(没有星级) rating_real- >不习惯 rating_hits- >不习惯 rating_value- >不习惯 Rating_reviews ->评论数量 Record_rating ->平均星星数 这是一个数据库列映射应用程序/ cms / Application.php: “评级”=>“record_rating”,“rating_hits”=>“rating_hits”,“rating_average”=>“record_rating”,“rating_total”=>“rating_value”,“num_reviews”=>“record_reviews”, 似乎你使用了映射到的值rating_average分类最高等级这就是为什么你有像这样的奇怪结果.Rating_average不考虑投票/评论的数量。 可能的解决方案狗万赢钱靠谱 解决方案#1可以同时使用这两列record_average和num_reviews或rating_hits.这将导致更准确的评级,如: 3x5星(平均5星,3票) 2x5星(平均5星,2票) 5x4+6x5(平均4票,11票) 10x4星(平均4颗,10票) 1x4+2x5(平均4票,3票) 1x4星(平均4颗,1票) 解决方案#2可以基于总星级和投票来计算评级https://calculator.academy/average-rating-calculator-star-rating/你已经通过星级计算了总评级rating_value.对评论做同样的事情。然后将星星总数除以5或10(取决于评级系统的配置方式)AdminCP).将结果保存为rating_real(未使用的列)并按其排序。上面的例子就不同了。 5x4+6x5 (50/5) = 10 10x4星(40/5)= 8 3x5星(15/5)= 3 1x4+2x5 (14/5) = 2,8 2x5星(10/5)= 2 1x4星(4/5)= 0,8 你能调查一下吗?如果有一个更复杂的逻辑来按等级排序,那将会非常有帮助。 谢谢你! 编辑9月27日由索尼娅* 达斯涡 1 链接到发表评论 在其他网站上分享 更多的共享选项…
推荐的文章