当渲染一个名为'member'的部分时,它会显示错误
#<#:0x000000095ec8c0>
的未定义局部变量或方法`user'
为什么?
我的代码是
查看
<% @users.each do |user| %>
<%= render 'member', :locals => {:user => user} %>
<% end %>
部分
<div class="chapter">
<p class="title">
<%= user.user_profile.nickname %>(<%= user.username %>)
</p>
答案 0 :(得分:3)
您应该使用:
<%= render :partial => 'member', :locals => { :user => user } %>
或者只是:
<%= render 'member', :user => user %>
答案 1 :(得分:3)
我的建议是,只要有可能,你就会遵守惯例;如果你这样做,一切都会顺利进行。
如果您有_user.html.erb
部分,则可以使用此rails约定
<% @users.each do |user| %>
<%= render user %>
<% end %>
但你甚至可以缩短这个
<%= render @users %>
好哇!
我强烈建议您查看Layouts and Rendering Guide