我试图让用户能够通过重新点击upvote按钮来删除他的upvote
这是我的控制器
def upvote
if current_user.voted_up_on? @post
@post = Post.find(params[:id])
@currentUserLikes = PublicActivity::Activity.where(trackable_id: @post.id, owner_id: current_user.id, key: "post.like")
@currentUserLikes.destroy_all
else
@post = Post.find(params[:id])
@post.upvote_by current_user
@post.create_activity :like,
owner: current_user,
recipient: @post.user
end
end
def downvote
@post = Post.find(params[:id])
@post.downvote_by current_user
@post.create_activity :dislike,
owner: current_user,
recipient: @post.user
end
我尝试将 if else 放在索引中,但它变得太复杂了,为什么它不起作用?注意 currentUserLike 是为了破坏用户的upvote action。 并且 upvote按钮不再起作用,我没有发布索引,因为当我没有更改控制器时我没有将其更改回来