我正在尝试通过 where 查询定义一个新数组,但我只能让它以一种方式工作。
这里是:
<%
@children = Array.new
Topic.where(breadcrumb_id: @topic.id).each do |y|
@children.push(y.name)
end
return @children
%>
Returns the array ["Performance Arts", "Visual Arts", "Physical Arts", "Music", "Culinary Arts"] (All topics)
但我宁愿只做
@children = Topic.where(breadcrumb_id: @topic.id)
return @children.each.name
Returns "undefined method `name' for #<Enumerator:0x007fe92205a1f0>"
无论出于何种原因 .each 都不会正确响应......尽管它在第一个示例中的初始 where 调用中起作用。有什么不同?
有没有办法做到这一点,以便我可以直接通过数组提取名称?