设置我的acts_as_votable,现在upvote和downvote按钮正常工作,但我希望用户在Facebook和Twitter上的第二次点击中移除他的upvote。 这是我的控制器
def upvote
@post = Post.find
@post.downvote_by current_user
end
def downvote
@post = Post.find(params[:id])
@post.downvote_by current_user
end
和索引
<%= link_to like_post_path(post), method: :put, class: 'upvote', remote: true do %>
Upvote
<%= post.get_upvotes.size %>
<% end %>
<%= link_to dislike_post_path(post), method: :put, class: 'downvote', remote: true do %>
Downvote
<%= post.get_downvotes.size %>
<% end %>
我怎样才能做到这一点?
答案 0 :(得分:0)
<% unless post.liked_by current_user %>
<%= link_to like_post_path(post), method: :put, class: 'upvote', remote: true do %>
Upvote
<%= post.get_upvotes.size %>
<% end %>
<% end %>
<% if post.liked_by current_user %>
<%= link_to dislike_post_path(post), method: :put, class: 'downvote', remote: true do %>
Downvote
<%= post.get_downvotes.size %>
<% end %>
<% end %>