我有一个用户,场地和评论的表格,用户可以在这里查看很多评论,并且会场有很多评论。
如何在每个用户的展示页面上显示用户撰写的所有评论?
我目前正在使用以下代码显示用户在相关场地节目页面上撰写的评论:
<%= 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>
答案 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
。