Rails使用实例变量渲染文件与locals

时间:2011-06-24 05:40:06

标签: ruby-on-rails render

我刚刚更新到Rails 2.3.11。在早期版本中,我可以编写以下内容

render :file=>'console/users/show.html.erb', :locals => {:@user => @users.first}

不再有效,而是我需要写

render :file=>'console/users/show.html.erb', :locals => {:user => @users.first}

这意味着访问文件中的用户我将使用'user'但是在文件中我想使用实例变量@user,因为这个同一个show文件是从控制器调用并传递@user

任何提示?

由于

1 个答案:

答案 0 :(得分:3)

在致电@user之前设置render

@user = @users.first
render :file=>'console/users/show.html.erb'

只有在传递局部变量时才应使用:locals选项。