@mandates
属性a
、b
、およびc
と@tabattributes
を持つモデルを含む結果セットの場合は、配列%w{a b}
である(つまり、あなたは@mandates
の各要素からa
とb
を抽出したい)、その後:
a = @mandates.map { |m| m.attributes.slice(*@tabattributes) }
は、'a'
と'b'
というキーを持つ一連のハッシュを提供します。たとえば、次のようにあなたに、アレイのサブアレイを与えるだろう
@mandates.map { |m| m.attributes.slice(*@tabattributes).values }
:
@tabattributes = %w{id created_at}
slices = @mandates.map { |m| m.attributes.slice(*@tabattributes) }
# slices is now like [ { 'id' => ..., 'created_at' => ... }, ... ]
あなただけの値をしたいと、これはあなたのために働くだろう、おそらくその後、鍵を気にしない場合。最初の配列ハッシュはおそらくより簡単に動作するでしょう。
あなたは、データベースにアクセスする前に、あなたがこのような何かを使用して、データベース内の興味を持っているだけの列アウトスライスでき@mandates
で得ることができる場合:
@mandates = Mandate.select(@tabattributes)
slices = @mandates.map(&:attributes)
感謝のあまり。これで、@ mandates.map {| m | m.attributes.slice(* @ tabattributes).values} – Marc