我有一个部分_album.html.erb,它有一个变量“专辑” 我有一个@albums系列。对于集合中的每个我想呈现部分。但我不使用“集合:”选项,因为我想把每个人放在不同的位置。这是我的代码:
<% @albums.each do | f | %>
..........
<td>
<%= render partial: "album", locals: {"album" f} %>
.........
<% end %>
此代码返回SyntaxError。我不知道为什么会这样。
答案 0 :(得分:5)
"album"
和f
之间没有任何分隔线,因此请尝试locals: {album: f}
或:album => f
答案 1 :(得分:1)
<强>当地人强>
除zishe
正确答案外,您还需要查看如何设置partial
local variables
的语法:
<%= render partial: "form", locals: {zone: @zone} %>
Rails基本上发送hash
个key: value
对,这意味着 的语法是这样的:
locals: {key: value, "key" => value}
你必须记住Rails基本上只是一个文件集合&amp;类,这意味着你所做的任何事情都必须符合Ruby允许你分配的方式。传递数据,hash
是主要方式之一
答案 2 :(得分:1)
我遇到了这个问题,我尝试使用locals: {..}
,但它没有用。
你可以试试这个对我有用的东西:
<%= render partial: "form", zone: @zone %>