为啥我的部分不能正确接收参数?
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
【讨论】:
以上是关于为啥我的部分不能正确接收参数?的主要内容,如果未能解决你的问题,请参考以下文章
我的Struts Spring整合时的AOP部分,为啥在action里的方法不被正确执行