繁体   English   中英

Ruby on Rails - 通过遍历实例变量在 html.erb 表中创建行

[英]Ruby on Rails - Creating rows in an html.erb table by looping over instance variable

我有一个实例变量@referrals,其中包含一个人所做的推荐名称。 我现在需要创建一个表格,将所有这些推荐显示为行。 我在 html.erb 文件中尝试了以下代码:

<table style="border:1px solid black;margin-left:auto;margin-right:auto;">
      <th> Referral Emails </th>
      <% @referrals.each do |referrals| %>
        <tr> referrals </tr>
     <%end %>
</table>

<table style="border:1px solid black;margin-left:auto;margin-right:auto;">
      <th> Referral Emails </th>
      <% @referrals.each do |referrals| %>
        <%= <tr> referrals </tr> %>
     <%end %>
</table>

两者都显示错误。

我是 Ruby 的新手,非常感谢您提供正确的 Ruby 代码帮助。 提前致谢。

编辑:@mu 建议的代码更改太短。

在ERB中默认情况下,代码块是用<%%>分隔符括起来的,如果你想要代码块运行的结果,你可以在里面使用=符号,比如<%= 'Hel' + 'lo' %>, world将 output “你好,世界”。

使用.each迭代的每个成员都在 pipe 符号之间命名,因此这就是您在块内引用的内容。

表格行也需要有表格数据,或者行<tr>标签中的<td>标签。

假设@referrals是一个字符串列表,这对你有用:

<table style="border:1px solid black;margin-left:auto;margin-right:auto;">
  <tr> <th> Referral Emails </th> </tr>
  <% @referrals.each do |referral| %>
    <tr> <td> <%= referral %> </td> </tr>
  <% end %>
</table>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM