我正在使用Rails 2.1从数据库输出表。但输出包括许多额外的行和标签。我正在使用带有大量嵌套if语句的while循环。我还将所有非输出行包装在<% - code - %>中。知道可能发生的事情和解决方案吗?谢谢,
注意:我一直试图粘贴代码,虽然预览看起来不错,但在保存时,格式化是不可读的....
<%- while row_no < total_rows -%>
<tr class="<%=h @row_styles[row_no] %>">
<%- @cells.each do |ce| -%>
<%- if row_no == ce.row_id -%>
<%- if @col_styles[ce.column_id] == '' -%>
<%- if ce.additional_info.blank? -%>
<td><%= ce.content %></td>
答案 0 :(得分:1)
将连续的Ruby行合并到一个代码块中会有很大帮助:
<%- while row_no < total_rows -%>
<tr class="<%=h @row_styles[row_no] %>">
<%- @cells.each do |ce|
if row_no == ce.row_id
if @col_styles[ce.column_id] == ''
if ce.additional_info.blank? -%>
<td><%= ce.content %></td>
此外,所有嵌套的if
向我建议您的实现可以使用一些工作。你能将这些中的任何一个组合成单个条件吗?
答案 1 :(得分:0)
我认为您需要发布一些代码才能进行有效的诊断。请将模板缩小为显示问题的小样本。
我确定您看到的生成的空白来自tge <%- -%>
- 标签之外的文本。对于低技术方法,尝试在当前空白处添加可见字符,并查看它在输出中的再现方式。