我是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
请帮我解决这个愚蠢的问题。 非常感谢提前
答案 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节