Tag: 评级

防止用户在Rails中多次投票

我在博客模型中设置了一个简单的评级系统。 我使用自定义方法来提高评级,这在博客db中是整数。 def increase @post = Post.find(params[:id]).increment!(:rating) if logged_in? current_user.increment!(:votes) end flash[:notice] = “Thanks for rating” redirect_to posts_url end 现在,我可以按照自己的意愿投票多次,这当然是一场灾难。 用户可以多次投票并推动计数方式。 我如何做到这一点,以便投票提交按钮在提交一次后消失。 我想为评级制作一个单独的模型并使用自定义令牌,但对于一个简单的应用程序来说似乎不必要地复杂化。 有帮助吗? 塞特希

Ruby on Rails:根据大多数评论的平均评分对用户进行排序?

我可以显示商店内的商品和评论。 如何获得最多评论的热门项目? 我的评论在另一个数据库表中,而不是商店和项目。 调节器 @shop = Shop.find(params[:id]) @item = Item.where(:shop_name => @shop.name) 视图 有一种简单的方法,我可以根据最高评价和大多数评论订购? 或者也许最好将最高评级和大多数评论分开,让用户点击链接进行过滤? 谢谢 编辑: 所以我有一个shop , item , review表。 在我的项目模型中 has_many :reviews, as: :reviewable has_many :shops 在我的评论模型和商店模型是 belongs_to :user 在我的评论表中,它设置为当用户评论项目时,它会向数据库添加记录,并使用与该项目关联的所有记录的average并在商店中显示它。

使用Ruby On Rails在AJAX中获得星级评分

我认为acts_as_rateable似乎已经过时了,并且不支持AJAX。 我正在寻找一个简单的“五星级”评级系统:是否有任何插件或教程可以提供帮助?

Ruby on Rails显示半个星级的小数等级,例如4.5

我可以查看5个星号,一个产品的评级为5,等级为4的4个星号等。但我想做的是用我的资产中的星星图像替换星号/图像/目录,如果评级为4.5,则显示半个星。 有办法做到这一点吗? 下面是我在application_helper.rb中的当前代码和index.html.erb中的视图。 application_helper.rb: module ApplicationHelper def render_stars(value) output = ” if (1..5).include?(value.to_i) value.to_i.times { output += ‘*’} end output end end index.html.erb: Star rating: