Ruby on rails 将内联HTML放入变量

Ruby on rails 将内联HTML放入变量,ruby-on-rails,contentplaceholder,Ruby On Rails,Contentplaceholder,有没有办法将视图中的内联HTML放入变量中?大概是这样的: <% t = content_to_var do %> <h1>The title</h1> <% end %> <% my_var = content_to_var do %> <p>Watch this fine results:</p> <table> <tr><td>Value 1.1

有没有办法将视图中的内联HTML放入变量中?大概是这样的:

<% t = content_to_var do %>
   <h1>The title</h1>
<% end %>

<% my_var = content_to_var do %>
   <p>Watch this fine results:</p>
   <table>
   <tr><td>Value 1.1</td><td>Value 1.2</td></tr>
   <tr><td>Value 2.1</td><td>Value 2.2</td></tr>
   <tr><td>Value 3.1</td><td>Value 3.2</td></tr>
   </table>
<% end %>

<%= render 'partial', { title: t, contents: my_var }

标题
观看以下精彩结果:

值1.1值1.2 价值2.1价值2.2 价值3.1价值3.2
在旧版本的Rails中,您可以

<% t = capture do %>
  <h1>The title</h1>
<% end %>

标题

不知道更新版本在旧版本的Rails中可以做什么

<% t = capture do %>
  <h1>The title</h1>
<% end %>

标题

不知道更新的版本

为什么不只渲染部分?这就是它们的用途

你可以这样做:

<% t = render :partial => 'title', :title => 'The title' %>
<% my_var = render :partial => 'values', :values => @values %>

<% render :partial => {title: t, contents: my_var } %>

希望这能有所帮助。

为什么不只渲染部分?这就是它们的用途

你可以这样做:

<% t = render :partial => 'title', :title => 'The title' %>
<% my_var = render :partial => 'values', :values => @values %>

<% render :partial => {title: t, contents: my_var } %>

希望这能有所帮助。

为什么要将这些变量传递给分部函数?视图(和部分)的思想是,它主要包含静态HTML(或XML,或任何内容),并且您可以内联添加变量?视图(和部分)的思想是,它主要包含静态HTML(或XML,或任何内容),您可以内联添加变量。我需要在循环中呈现相同的部分,从数组中获取值。我不明白您想用该注释说什么。是否要查看在循环中呈现部分的示例?我需要在循环中呈现相同的部分,从数组中获取值。我不明白您想对该注释说什么。你想看一个局部在循环中呈现的例子吗?在我看来,这不是很清楚。我不知道你的整个情况。但是我会将捕获移到部分(而不是在那里使用捕获),并使用局部变量/实例变量来解决它。或者让helper方法代替partial,并在rhtml的主循环中使用它们。定义了一个数组,其中每个字符串都是通过捕获形成的,然后使用“each”。感谢所有回应的人——这帮助我选择了最佳解决方案。在我看来,这并不那么干净。我不知道你的整个情况。但是我会将捕获移到部分(而不是在那里使用捕获),并使用局部变量/实例变量来解决它。或者让helper方法代替partial,并在rhtml的主循环中使用它们。定义了一个数组,其中每个字符串都是通过捕获形成的,然后使用“each”。感谢所有回应的人——这帮助我选择了最佳解决方案。