[英]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.