为啥我的部分不能正确接收参数?

Posted

技术标签:

【中文标题】为啥我的部分不能正确接收参数?【英文标题】:Why my partial won't receive parameters correctly?为什么我的部分不能正确接收参数? 【发布时间】:2012-12-23 07:24:14 【问题描述】:

当渲染一个名为'member'的部分时,它说错误

#

的未定义局部变量或方法“用户”

为什么??

我的代码是

查看

<% @users.each do |user| %>  
    <%= render 'member', :locals => :user => user %>      
<% end %>

部分

<div class="chapter">
  <p class="title">
    <%= user.user_profile.nickname %>(<%= user.username %>)
  </p>

【问题讨论】:

【参考方案1】:

你应该使用:

<%= render :partial => 'member', :locals =>  :user => user  %>

或者只是:

<%= render 'member', :user => user %>

【讨论】:

【参考方案2】:

我的建议是尽可能遵守约定;如果你这样做,一切都会顺利得多。

如果你有一个 _user.html.erb 部分,你可以使用这个 rails 约定

<% @users.each do |user| %>
 <%= render user %>
<% end %>

但你甚至可以更短一点

<%= render @users %>

嘘!

我强烈建议您查看Layouts and Rendering Guide

【讨论】:

以上是关于为啥我的部分不能正确接收参数?的主要内容,如果未能解决你的问题,请参考以下文章

为啥我的可变参数宏不能正确接受任何参数?

为啥 Pyglet 不能正确绘制多边形?

为啥 Vigenere 密码只能正确加密部分消息?

我的Struts Spring整合时的AOP部分,为啥在action里的方法不被正确执行

为啥 argparse 不能正确解析我的布尔标志? [复制]

为啥我不能订阅部分信任 AppDomain 中的事件?