在辅助方法中打印数组

时间:2013-02-07 22:22:28

标签: ruby-on-rails arrays printing

我是Ruby-on-rails的新手。我有一个非常简单的问题: 这个在我的视图文件中起作用:

- @posts.each do |child|
    = child.name
end

但是,我无法创建一个辅助方法,该方法将数组作为参数并使用'each'进行迭代。

在我的视图文件中:

=f1(@posts)

在我的帮助文件中:

def f1(abc)
    abc.each do |child|
            puts child.name
    end
end

请帮我解决这个愚蠢的问题。 非常感谢提前

2 个答案:

答案 0 :(得分:1)

这样的事情有用吗?

def f1(abc)
  output = ''
  abc.each do |child|
    output << "<br/> #{child.name}"
  end
  output
end

答案 1 :(得分:0)

在运行的rails app puts输出到日志文件中。

我建议尝试这种方法:

在posts视图目录中创建一个'_post'部分,然后使用post作为对象放置要渲染的内容(即:post.name),然后在render @posts中使用{{1}}视图。这将自动渲染集合中每个对象的部分。

有关详细信息,请参阅Ruby on Rails Layouts and Rendering Guide中的第3.4.5节