【发布时间】:2014-02-24 21:39:49
【问题描述】:
有帖子、cmets 和用户。我想在发布显示页面的 cmets 列表中发布特定用户的 cmets 数量。我知道我需要定义@user,但我不知道如何定义它,以便它为每个用户显示特定的数字。用户是评论的作者。
后控制器
def show
@post = Post.find(params[:id])
@comment = Comment.new
@comments = Post.find(params[:id]).comments.order(created_at: :desc)
@user = ???
end
发布/显示操作 - 错误是针对 - @user.cmets.count
<div class="row">
<% @comments.each do |comment| %><br>
<div class="col-sm-4"> <%= link_to comment.user.name, user_path(comment.user) %> <br>
<%= image_tag(comment.user.smallimage) %><%= @user.comments.count %>
</div>
<div class="col-sm-8"> <b><%= comment.title %>:</b>
<div>
<% if comment.content.length > 250 %>
<%= truncate(comment.content, length: 250) %>
<%= link_to_function '...Read more', "$(this).parent().html('#{escape_javascript comment.content}')" %>
<% else %>
<%= comment.content %>
<% end %>
</div>
</div>
<% end %>
</div>
【问题讨论】:
-
你试过@user= User.find(params[:id])
-
是的,但它显示找不到 id=[id_of_post] 的用户
-
您能否编辑问题以包含有关用户什么的信息?用户是帖子的作者吗?他们是访客吗?
-
用户是评论的作者
标签: ruby-on-rails ruby-on-rails-4