记住,函数content_标记返回一个字符串。它不会直接写入页面。因此,您对TDS所做的是:
content_tag :tr do
content_tag :td do
link_to h(product.name), product, :title=>product.name
end
content_tag :td do
product.price
end
end
如果我们对这部分进行评估,
content_tag :tr do
"<td title='Ducks'> <a ...>Ducks</a></td>"
"<td>19</td>"
end
在一个块中,最后一个值是返回的值。有两个字符串,但第一个字符串在以太中丢失了。第二个字符串是块中的最后一个值,并返回。
您需要做的是在它们之间放置一个+来将字符串添加到一起:
content_tag :tr do
(content_tag(:td) do
link_to h(product.name), product, :title=>product.name
end) + #SEE THE PLUS IS ADDED HERE
(content_tag(:td) do
product.price
end)
end
您必须在tr级别执行相同的操作,只需在第一个content_标记结束后在其中放置一个加号。