Ruby on rails 如何使用“未读评论”统计未读评论;“未读”;红宝石?

Ruby on rails 如何使用“未读评论”统计未读评论;“未读”;红宝石?,ruby-on-rails,ruby,Ruby On Rails,Ruby,注释\u helper.rb: 在我的应用程序控制器中,我定义了用户: def user @user = User.find_by(params[:user_id]) end 我本可以使用当前用户,但我得到的结果是数据库中的评论总数。所以,我想我应该使用user。但它不起作用 视图: 尝试运行相同的东西Comment.unread\u by(用户)。在rails控制台中计数。看看它是否给出了预期的输出。它没有返回任何东西。。。我在想,在未读gem生成一些迁移文件的过程中,有一些东西我没有添

注释\u helper.rb:

在我的
应用程序控制器
中,我定义了
用户

def user
  @user = User.find_by(params[:user_id])
end
我本可以使用
当前用户
,但我得到的结果是数据库中的评论总数。所以,我想我应该使用
user
。但它不起作用

视图:


尝试运行相同的东西
Comment.unread\u by(用户)。在
rails控制台中计数
。看看它是否给出了预期的输出。它没有返回任何东西。。。我在想,在未读gem生成一些迁移文件的过程中,有一些东西我没有添加到我的数据库中……是否有你过去使用过的任何gem或任何在线资源,我可以用来跟踪当前用户在帖子上未读评论的总数?“它不会返回任何内容。”-您可以检查它触发的数据库查询。从注释“左连接读取标记”到“读取标记”。readable\u type=“Message”read_marks.readable_id=comments.id和read_marks.reader_id=1,read_marks.reader_type='User'和read_marks.timestamp>=messages.created_,其中read_marks.id为NULL
def user
  @user = User.find_by(params[:user_id])
end
<%= unread_comments_count %>
 SELECT COUNT(*) FROM "comments" 'LEFT JOIN read_marks ON read_marks.readable_type = "Message" AND read_marks.readable_id = comments.id AND read_marks.reader_id = 1 AND read_marks.reader_type = 'User' AND read_marks.timestamp >= comments.created_at WHERE read_marks.id IS NULL