我想传递一个局部变量,其中包含特定页面上的原点,该变量仅包含带有值的符号。
当我使用这段代码时,它工作得很好,可以在部分中访问 origin 变量:
render :partial => "products", :collection => @products, :locals => {:origin => :gallery}
但是当我使用此代码时,原点未设置并且无法在部分中访问:
render @products, :locals => {:origin => :gallery}
这里有什么区别呢?第二行代码是否没有像第一行那样渲染部分?
<%= render @products %>
确实是渲染部分的简写语法。但使用简写语法,Rails 将忽略“:locals”变量。有关于此的更多信息,请参阅导轨指南.
因此,如果您想将额外的选项传递给渲染器,则必须指定“:partial => ...”。如果你想知道为什么会发生这种情况,你可以看看Railssource.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)