Ruby 如何从列创建数组?

Ruby 如何从列创建数组?,ruby,ruby-on-rails-3,Ruby,Ruby On Rails 3,如何从数据库列创建数组 我的桌子雷克勒默: id virksomhed dato klik 10 Iqmedier 2011-02-15 00:00:00 4 11 Iqmedier 2011-02-15 00:00:00 2 12 Iqmedier 2011-02-15 00:00:00 3 我想创建一个包含所有klik列的数组。像[4,2,3] 有人能解释什么是块和对象吗:)

如何从数据库列创建数组

我的桌子雷克勒默:

id  virksomhed  dato                   klik     
10  Iqmedier    2011-02-15 00:00:00     4   
11  Iqmedier    2011-02-15 00:00:00     2   
12  Iqmedier    2011-02-15 00:00:00     3   
我想创建一个包含所有klik列的数组。像
[4,2,3]


有人能解释什么是块和对象吗:)或者在哪里我能读到一些关于它的东西。

我猜你也有一个名为
Reklamer
的模型

您可以执行以下操作来获取数组

Reklamer.select('klik').all.map(&:klik)
编辑:

(红宝石色)
map(&:klik)
只是

.map do |record|
  record.klik
end

它为每个记录返回
klik
的值,并使用这些值创建一个新数组。

什么是.map(&:klik)?它会创建一个数组吗?我如何只创建一个包含Virksomhed=Iqmedier列的数组。我试过使用这些数据:{:virksomhed=>'Iqmedier'}).select('earn').all.map(&:earn)%>但得到一个错误:参数数目错误(2对1)Try
Reklamer.where(:virksomhed=>'Iqmedier').all.map(&:earn)
@Rails初学者,仅供参考,在堆栈溢出上他们不鼓励使用问候语(问候语),提前签名和感谢他人或“致以最良好的问候”或类似的(有效语)。他们也不鼓励在问题标题中使用“简单的提问”。