这发生在User
的显示页面上,在该页面上我为某些用户显示帖子问题是@replies.each
...执行正确,但没有显示post.id的回复,我不知道为什么...有时,当我浏览其他帖子时,我发现不应该存在的答复,因此我认为错误在于
@post = Post.find(params[:id])
,但我不知道该怎么办。
用户控制器
def posting
@posts = User.find(params[:id]).posts
@post = Post.find(params[:id])
@replies = @post.replies
end
thread.html.erb
<% @posts.each do |x| %>
<%= x.content %>
<%= render 'replies' %>
<% end %>
_replies.html.erb
<% @replies.each do |x| %>
<%= x.content %>
<% end %>
答案 0 :(得分:2)
我的理解是您想获取特定帖子的回复,应该是这样的:
您的管理员:
@posts = Post.all
thread.html.erb
<% @posts.each do |x| %>
<%= x.content %>
<%= render 'replies', locals: {replies: x.replies} %>
<% end %>
_replies.html.erb
<% replies.each do |x| %>
<%= x.content %>
<% end %>