2012-06-24 28 views

回答

1

渲染的第二个参数locals是一个映射,它指定将在部分渲染中可用的变量。 Api Doc: http://apidock.com/rails/ActionView/Template/render 在这里,我们正在传递一个User实例,而不是Rails所期望的地图。当执行代码来渲染部分时,Rails试图使用User对象作为映射,因此出现了无法找到方法'键'的错误。

我真正需要的是这样的 -

<%= render 'shared/error_messages', object: f.object %> 

object是一个变量_error_messages.html.erb部分期待。这解决了错误。