从嵌套的User array ruby​​中拉出name属性

时间:2013-05-20 13:45:15

标签: ruby-on-rails ruby arrays

board.voters_who_voted

返回一个包含User表中行的数组。我要提取的属性是名称。

示例输出(此处只有一位用户):

[#<User id: 71, name: "montgomery Thamavaranacupt", email: "jmash@aol.com", created_at: "2013-01-27 05:32:30", updated_at: "2013-04-24 07:07:43", password_digest: "$2a$10$Es/olEq0.w6vcnn4.8v0.O0VXDP1c7nktcW85UFtG91e...", remember_token: "ttPm1aTE6WBm3WVx4EJTew", admin: false, image_file_name: nil, image_content_type: nil, image_file_size: nil, image_updated_at: nil, avatar: 0>]

我想我需要遍历整个数组并打印名称。

这就是我的尝试:

board.voters_who_voted.each {|x| puts x.name}

然而,由于某种原因,这只会返回整个数组

board.voters_who_voted[0].name

上面正确地返回了第一个用户的名字,但我需要这个用于所有用户

1 个答案:

答案 0 :(得分:2)

您可以使用map

board.voters_who_voted.map(&:name)

由于您想在title属性中使用它,我建议如下:

<%= link_to .., .., :title => board.voters_who_voted.map(&:name).join("\n").html_safe %>