1

这是我正在做的事情的要点

<!-- if user liked post -->
  Show "Unlike" button
<!-- else -->
  Show "Like" button
<!-- end -->

在 Rails 中,我会这样做:

<% if @like = current_user.likes.find_by_post_id(@post.id) %>
    Unlike
<% else %>
    Like
<% end %>

假设我的数据库中已经有超过 1,000 个帖子,那么查找用户是否已经喜欢某个帖子的最有效方法是什么?

想到什么:

  1. 由于我已经通过服务注入了当前用户的 id,也许我可以发回一个请求..?(我不知道我会怎么做)

  2. 发送当前用户喜欢的所有帖子 ID 的数组,看看是否有任何匹配帖子的 ID

提前致谢。

4

1 回答 1

0

哪个会更大:单个项目将获得的点赞数,还是用户点赞的次数?

大概是后者。

如果您一次显示很多项目,也许您可​​以预先获取当前用户在显示的集合中喜欢的项目。

于 2013-10-01T23:46:07.747 回答