16
A
回答
13
我建议创建like
和dislike
选项通过承担经典投票模型功能。
因此,您有Vote
作为User
和Votable Item
之间的连接表。
投票值可以作为Vote.value + 1 =赞,Vote.value -1 =不喜欢,Vote.value =中立/未投票。
你对于自己可投票项目控制器可以是这样的:
def like
get_vote
@vote.value += 1 unless @vote.value == 1
@vote.save
respond_to do |format|
format.html
format.js
end
end
def dislike
get_vote
@vote.value -= 1 unless @vote.value == -1
@vote.save
respond_to do |format|
format.html
format.js
end
end
private
def get_vote
current_item = @item.detect{|r| r.id == params[:id].to_i}
@vote = current_item.votes.find_by_user_id(current_user.id)
unless @vote
@vote = Vote.create(:user_id => current_user.id, :value => 0)
current_item.votes << @vote
end
end
而且每个人的信息,这个问题不值得被否决。它完全有效。
-2
1
我没有看到这个问题没有错。
上调投票仍然是评级。只使用两颗星。 :)我似乎记得允许星号定义数的acts_as_rateable。
5
我知道的答案已经被接受,但我只是发现了一个名为act_as_votable的宝石,可能适合你的需求:
充当可投票是一个Ruby宝石专门为Rails/ActiveRecord的模式写入。这种宝石的主要目标是:
- 允许进行表决任何模型上,喜欢/不喜欢,给予好评/ downvote等
- 允许任何模型来投票。换句话说,投票不必来自用户,他们可以来自任何模型(例如团队或团队)。
- 提供易于编写/读取的语法。
3
相关问题
- 1. 喜欢/不喜欢系统像FB
- 2. 喜欢/不喜欢按钮在博客w/ajax轨道
- 3. Ebay喜欢卖插件
- 4. JAutodoc喜欢插件为C + +
- 5. SQL不喜欢和喜欢
- 6. 喜欢但不喜欢
- 7. mySQL喜欢,但不喜欢
- 8. 如何创建弹出图像(不喜欢插件)
- 9. 免费像与不喜欢的WordPress的插件
- 10. 阿贾克斯请求设置喜欢/不喜欢在轨道上
- 11. 计数喜欢不喜欢和点击
- 12. Jquery ajax喜欢和不喜欢按钮
- 13. 喜欢不喜欢功能AJAX
- 14. 喜欢和不喜欢在同一列
- 15. 喜欢/不喜欢发行系统
- 16. 优化mysql查询(喜欢/不喜欢)
- 17. 制作Youtube喜欢/不喜欢Bot
- 18. 喜欢/不喜欢Firebase的交易?
- 19. SSAS DMV不喜欢条件
- 20. Oracle不喜欢
- 21. Wordpress喜欢插件框架在ASP.NET
- 22. 排序喜欢的Facebook评论插件
- 23. Facebook喜欢带点名的插件
- 24. “喜欢按钮”的facebook插件
- 25. 更喜欢我的QuickLook插件
- 26. Facebook喜欢视频上传插件
- 27. PhoneGap插件安装喜欢Facebook
- 28. 集成社交插件 - 喜欢消失
- 29. Django管理员不喜欢SQL插入
- 30. Django的附件喜欢可插拔的图像应用程序
非常感谢!我会试试这个...... :) – Madhusudhan 2010-09-14 18:25:25
祝你好运Madhusudhan :) – Trip 2010-09-14 18:32:26