1

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

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

但是,我无法创建一个将数组作为参数并使用“每个”对其进行迭代的辅助方法。

在我的视图文件中:

=f1(@posts)

在我的帮助文件中:

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

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

4

2 回答 2

1

这样的事情有用吗?

def f1(abc)
  output = ''
  abc.each do |child|
    output << "<br/> #{child.name}"
  end
  output
end
于 2013-02-07T22:27:21.913 回答
0

在运行的 rails 应用程序puts中,输出到日志文件中。

我建议尝试这种方法:

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

有关更多信息,请参阅Ruby on Rails 布局和渲染指南中的第 3.4.5 节

于 2013-02-07T22:48:27.587 回答