2014-10-29 92 views
0

我有一个acts_as_votable在我的应用上工作的实例。但是,关于如何设置acts_as_votable的第二个实例,我遇到了麻烦。rails,acts_as_votable第二个实例

在高层次上,除了我已有的“我喜欢这篇文章”之外,我想添加一个“为此文章添加书签”投票。

有人可以通过逻辑来引导我如何做到这一点吗?提前致谢!

回答

1

从概念上讲,它们是相同的。用户likes一个帖子和一个用户bookmarks一个帖子都为该用户增加了like和书签计数器+1。

您可以使用它像以下(使用范围):

class User < ActiveRecord::Base 
    acts_as_voter 
    has_many :posts 
end 

class Post < ActiveRecord::Base 
    acts_as_votable 
    belongs_to :user 
end 

# To like, bookmark a post by a user 
@user.likes @post, vote_scope: 'like' 
@user.likes @post, vote_scope: 'bookmark' 

# Check if a user has liked or bookmarked a post 
@user.voted_for? @post, vote_scope: 'like' 
@user.voted_for? @post, vote_scope: 'bookmark' 

# See a list of user likes and bookmarks 
@user.find_voted_items(vote_scope: 'like') 
@user.find_voted_items(vote_scope: 'bookmark') 

应该这样做。 https://github.com/ryanto/acts_as_votable有全面的例子。

+0

Amaazzzinggg!谢谢! – gitastic 2014-10-30 03:54:57

相关问题