Ruby在单词之间添加了怪异的间距

问题描述 投票:-1回答:1

我的网站正在打印(SnO)之类的元素,但是,它应该在打印SnO,但它添加了一个奇怪的空间,并且在打印时像SnO。它在元素之间无缘无故地添加了一个空格。我的代码在以下列表中。

<% saved_element = ""%>
<% sensor.base_material.elests.each_with_index do |elest, v| %>
        <% if elest.element.include? "O" %> 
            <% saved_element = elest %>
        <% else %>
            <%=elest.element.split('-').last %>
            <% if elest.stoich != 1 %>
                <sub><%=elest.stoich.to_i%></sub>
            <% end %>
        <% end %>
        <% if v == sensor.base_material.elests.length-1 %>
            <%=saved_element.element.split('-').last%>
            <% if saved_element.stoich != 1 %>
                <sub><%=saved_element.stoich.to_i %></sub>
            <% end %>
        <% end %>
<% end %>
ruby-on-rails ruby
1个回答
3
投票

您显示的代码充满空格(在每行的开头)。它们被打印在HTML上并压缩为一个空格。另外,当您打印一个值时,它会在末尾添加一个空格,您可以禁止使用<%= ... -%>(注意末尾的破折号)

https://www.howtobuildsoftware.com/index.php/how-do/Nzr/ruby-on-rails-erb-suppressing-spaces-in-erb-template

无论如何,我会将所有逻辑移到辅助方法,这就是辅助方法的作用。

© www.soinside.com 2019 - 2024. All rights reserved.