在Rails助手中,可以使用capture方法对ERB块的输出进行capture。但是,如果ERB块需要参数怎么办?在这种情况下,如何使用capture

对于一个虚构的例子:

<% my_helper(:parameter, models) do |model| %>
  <%= model.eye_color %>
<% end %>

my_helper方法中,我想用<span class='color'>...</span>包围该块的每次迭代的输出。

我知道我可以捕获ERB块的输出并将其存储在带有html = capture(&block)的变量中,但是我不知道如何将必要的model参数传递给该块!

最佳答案

您不能将它们传递到通话中进行捕获吗?该文档显示它会散布参数,因此我假设它们已传递给该块。例如:

html = capture(:foo, :bar, &block)

关于ruby-on-rails - 在Rails中,如何将参数传递给 `capture`方法?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6907758/

10-12 04:54