0

我正在尝试从当前目录打印文件列表。我用了

@files = Dir.glob('*')

在视图中我正在尝试使用

<%= @files.each {|file| puts "<li>" + file + "</li>"}%>

但相反,它只打印我的文件名数组,没有<li>标签。我究竟做错了什么?

4

3 回答 3

4

正如亚历克斯所说,puts 可能会将其推送到服务器日志,这是您可以执行的操作:

<% @files.each do |file| %>
  <li><%= file %></li>
<% end %>

由于您在 @files 之前有 =,因此您会看到数组的字符串输出。

于 2012-09-06T12:40:19.200 回答
3

采用

<% @files.each do |file| %>
<li> <%= file %></li>
<% end %>

您似乎没有正确理解 erb 语法的语法。

puts将打印日志文件中的值而不是在网页上

于 2012-09-06T12:40:31.833 回答
2

在帮手

def display_files(dir='*')
 list = ""
 files = Dir.glob(dir)
 @files.each do |file|
  list << "<li>#{file}</li>"
 end
list

end

在视图中

于 2012-09-06T12:43:42.130 回答