html - 在 ruby​​ 的一个 block 中执行两个each do语句

标签 html mysql ruby sinatra

我试图能够在一个表的代码块中执行两个 .each do 语句。我从一个数据库表中提取问题,从另一个数据库表中提取答案,最后我现在尝试从第三个表中提取对问题的评论。这是我所拥有的一部分。它将与每个语句中的一个或另一个一起正常工作,但我需要能够提取所有三个表,并能够遍历每个数据库并让它填写我的表,其中包含多少信息

<table id="table1" cellspacing="0" class="mytable" >

<% dataQ.each do |dataQ| %>
  <th><strong> <%=dataQ[1]%> </strong></th>     
<%end%> 

<% data.each do |data|%> 
  <% dataC.each do |dataC| %>

    <tr>
      <td><%=data[0]%></td> <td><%=data[1]%></td><td><%=data[2]%></td><td><%=data[3]%></td><td><%=data[4]%></td>
      <td><%=data[5]%><div class="accordion">Comment</div><div class="panel"><%=dataC[0]%></div></td>
      <td><%=data[6]%><div class="accordion">Comment</div><div class="panel"><%=dataC[1]%></div></td>
      <td><%=data[7]%><div class="accordion">Comment</div><div class="panel"><%=dataC[2]%></div></td>
      <td><%=data[8]%><div class="accordion">Comment</div><div class="panel"><%=dataC[3]%></div></td>
    </tr>

  <% end %>
<% end %>
</table>

还有一些西纳特拉

get '/display' do

  dataQ = database.execute("select * from Questions");
  data = database.execute("select * from results");
  dataC = database.execute("select * from Comments")        

  erb :display, :locals => {:data => data, :dataQ => dataQ, :dataC =>   dataC}

end

最佳答案

如果我理解正确 - 您的 datadataC 数组是嵌套的,因此只要它们长度相同,您可以尝试以下操作:

<% 0.upto(data.length - 1) do |index| %>
  <tr>
    <td><%=data[index][0]%></td>
    <td><%=data[index][1]%></td>
    <td><%=data[index][2]%></td>
    <td><%=data[index][3]%></td>
    <td><%=data[index][4]%></td>
    <td><%=data[index][5]%><div class="accordion">Comment</div><div class="panel"><%=dataC[index][0]%></div></td>
    <td><%=data[index][6]%><div class="accordion">Comment</div><div class="panel"><%=dataC[index][1]%></div></td>
    <td><%=data[index][7]%><div class="accordion">Comment</div><div class="panel"><%=dataC[index][2]%></div></td>
    <td><%=data[index][8]%><div class="accordion">Comment</div><div class="panel"><%=dataC[index][3]%></div></td>
  </tr>
<% end %>

关于html - 在 ruby​​ 的一个 block 中执行两个each do语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37234749/

相关文章:

python - Google App Engine,上传图像

html - 如何将容器与主体中心对齐?

mysql - 将天数添加到 mysql 日期时间行

css - 除了导航之外的 html5 导航

javascript - 深层链接到 Facebook 应用程序(使用 fb : protocol) not working from Facebook in-app browser

sql - 即使关联多于范围要求也返回

ruby - 如何检测 Ruby 线程何时从线程内被杀死

ruby-on-rails - rails : active record saving time:type with unwanted format

sql - MySQL仅从一张表中查询出现在某一类别表中的产品

PHP 不将数据保存到数据库