1

render(:partial=> "test" ...) 中的 render(test) 等价物是什么?

我相信它是 render(:partial=>"test", :collection=> test),但这似乎不适用于我的应用程序。

render(test)工作正常,但render(:partial=>"test", :collection=> test)不工作。

我怎样才能解决这个问题?

4

2 回答 2

2

你打电话时

render partial: "test", collection: test

有一个期望

  • 您有一个文件在与调用_test.html.erb视图模板相同的目录中命名render
  • :collection值是可枚举的
  • _test.html.erb您使用test变量来处理test集合中的项目

test部分文件中的变量以文件名test命名_test.html.erb而不是集合变量test或其模型实例类名。

我建议阅读有关渲染集合的布局和渲染指南。

于 2013-03-08T05:45:55.900 回答
2

它不起作用的原因是它不需要集合参数;最后,这是有效的:

render(:partial=>"test", :locals=> {:test=> test})
于 2013-03-08T06:04:17.093 回答