渲染文件名数组

时间:2012-09-06 12:36:50

标签: ruby-on-rails ruby

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

@files = Dir.glob('*')

在视图中我正在尝试使用

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

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

3 个答案:

答案 0 :(得分:4)

正如亚历克斯所说,puts可能会把它推送到服务器日志,这就是你可以做的事情:

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

由于你在@files之前有=,你会看到一个数组的字符串输出。

答案 1 :(得分:3)

使用

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

您似乎没有正确使用erb语法的语法。

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

答案 2 :(得分:2)

in helper

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

end

在视图中