我理解有困难请帮帮我 此代码适用于海报, 如果评论者对帖子发表评论,则会显示所有用户评论, 但我希望评论者看到他唯一的评论。隐藏所有评论
<% @post.comments.each do |comment| %>
<% next unless [comment.user, @post.user].include? current_user %>
all comment here
<%end%>
答案 0 :(得分:0)
问题是您呈现所有帖子评论,而不是评论评论
<% @post.comments.each do |comment| %>
<% next unless [comment.user, @post.user].include? current_user %>
<%= render comment %>
<%end%>
如果<% next unless [comment.user, @post.user].include? current_user %>
不是评论者或帖子所有者,则 current_user
会转到下一条评论,因此您将为帖子所有者呈现所有评论,如果用户不是帖子所有者,则只会渲染由他。
这也可以定义为
<% @post.comments.each do |comment| %>
<% if [comment.user, @post.user].include? current_user %>
<%= render comment %>
<% end %>
<%end%>
最终结果相同