如何显示用户创建的所有记录?

时间:2011-06-03 22:38:13

标签: ruby-on-rails list activerecord

我有一个用户,场地和评论的表格,用户可以在这里查看很多评论,并且会场有很多评论。

如何在每个用户的展示页面上显示用户撰写的所有评论?

我目前正在使用以下代码显示用户在相关场地节目页面上撰写的评论:

<%= render :partial => 'reviews/review', :collection => @venue.reviews %>

是否可以重复使用评论?

使用:

<%= render :partial => 'reviews/review', :collection => @user.reviews %>
用户显示页面中的

给出了未定义的方法`review_path'错误。

感谢任何帮助,非常感谢!

修改

审核部分

<div class="review">

  <div class="reviewer_details">
    <div class="reviewer_details_photo">
      <%= image_tag review.user.avatar.url(:thumb) %>
    </div>
    <%= review.user.username %>
  </div>

  <div class="review_content">
    <h2 class="review_partial_title"><%= link_to review.title, [@venue, review] %></h><br>
    <p><%= review.rating %></p>
  </div>

  <div class="clearall"></div>
</div>

2 个答案:

答案 0 :(得分:1)

当你打电话给那个部分时,你没有通过@venue。 尝试更改<%= link_to review.title, [@venue, review] %> 对于像<%= link_to review.title, [object, review] %>

这样更广泛的事情

在您对此部分使用的调用中

<%= render :partial => 'reviews/review', :collection => @user.reviews, :locals => {:object => @user} %>

答案 1 :(得分:1)

每个review只有一个venue,对吧?

请尝试使用

替换link_to review.title, [@venue, review]

link_to review.title, [review.venue, review]

正如@Devin所说,@venue在您的用户导向评论列表中为nil