IO.readlines 包含空格 - Ruby on Rails
IO.readlines with spaces included - Ruby on Rails
我是 Rails 的新手,我遇到了一个问题,我不知道如何解决。尝试 google 但没有成功。
基本上我有一个文本文件,我使用 IO.readlines 读取该文件,放入一个数组,然后在我的视图中打印出来。我得到了工作。
问题是我 "read" 的文本文件有缩进,当我在我的视图中从数组中打印出来时,缩进空格不包括在内。
这就是代码目前的样子。
控制器
@codefile = Codefile.find(session[:codefile_id])
dir = @codefile.file.url.to_s
url = dirr.split("?")
@fileLinesArray = IO.readlines('public' + url[0])
查看
<ol>
<% @fileLinesArray.each do |x| %>
<li><%= x %></li>
<% end %>
</ol>
也许我什至不应该使用 readlines?无论如何...
非常感谢我能得到的任何帮助!
您的问题是 HTML 忽略了代码中的多个空格。如果您检查 HTML 源代码,您会看到那里有空格,但它们没有被渲染。
您必须使用代表 "preformatted" 的 <pre>
标记来保留空格:
<ol>
<% @fileLinesArray.each do |x| %>
<li><pre><%= x %></pre></li>
<% end %>
</ol>
此外,您可能希望将其更改为 <%= x.chomp %>
,这将省去多余的换行符。
我是 Rails 的新手,我遇到了一个问题,我不知道如何解决。尝试 google 但没有成功。
基本上我有一个文本文件,我使用 IO.readlines 读取该文件,放入一个数组,然后在我的视图中打印出来。我得到了工作。
问题是我 "read" 的文本文件有缩进,当我在我的视图中从数组中打印出来时,缩进空格不包括在内。
这就是代码目前的样子。
控制器
@codefile = Codefile.find(session[:codefile_id])
dir = @codefile.file.url.to_s
url = dirr.split("?")
@fileLinesArray = IO.readlines('public' + url[0])
查看
<ol>
<% @fileLinesArray.each do |x| %>
<li><%= x %></li>
<% end %>
</ol>
也许我什至不应该使用 readlines?无论如何...
非常感谢我能得到的任何帮助!
您的问题是 HTML 忽略了代码中的多个空格。如果您检查 HTML 源代码,您会看到那里有空格,但它们没有被渲染。
您必须使用代表 "preformatted" 的 <pre>
标记来保留空格:
<ol>
<% @fileLinesArray.each do |x| %>
<li><pre><%= x %></pre></li>
<% end %>
</ol>
此外,您可能希望将其更改为 <%= x.chomp %>
,这将省去多余的换行符。