我有一个使用acts_as_votable 运行良好的rails 应用程序。点赞按钮会增加帖子计数,然后切换到不喜欢按钮,这会降低帖子计数。
我的问题是,自从我开始使用公共活动 gem,我找不到从提要中删除喜欢的方法。我在活动索引视图中使用了以下循环:
<% @activities.each do |activity| %>
<p>
<% if activity.trackable %>
<%= link_to activity.owner.name, activity.owner %>
<%= render_activity activity %>
<% end %>
</p>
<% end %>
当我删除评论时,“FOO 在 BAR 上添加评论”的活动提要中的整行都消失了。然而,由于作为可投票的 gem 的行为实际上会产生一个反对票而不是破坏赞成票,所以“FOO 喜欢 BAR”这一行仍然出现,随后会出现“FOO 不喜欢 BAR”。
有谁知道我如何在特定帖子上找到 current_user 的赞成票然后将其销毁?
下面是我的控制器代码,用于表示喜欢和不同:
def like
@ink.create_activity :like, owner: current_user
@ink.upvote_by current_user
redirect_to :back
end
def unlike
@ink.downvote_by current_user
redirect_to :back
end
谢谢