[lnkForumImage]
TotalShareware - Download Free Software

Confronta i prezzi di migliaia di prodotti.
Asp Forum
 Home | Login | Register | Search 


 

Forums >

comp.lang.ruby

store all the values in a new array

Remco Swoany

2/26/2009 9:13:00 AM

Hi,

the array below is the output from a find(:all)

[#<Boekingen affnr: "vl999", pnr: "MA5OSG", agent: "monties",
ticket_prijs: #<BigDecimal:b775f4c4,'0.138E3',4(12)>, aantal_pers: 2,
ticket_fees: nil, res_kosten: nil, commissie: nil, ticket_verz: nil,
tax: nil, total_prijs: #<BigDecimal:b775f230,'0.36316E3',8(12)>, bet_id:
nil, vertrek_id: "AMS", bestemming_id: "MAD", airline_id: "HV",
cabinclass: nil, type: nil, eligibility: nil, supplier: nil, heen_datum:
1020204000, terug_datum: 1049061600, outbound_v: nil, outbound_a: nil,
outbound_vluchtnrs: nil, inbound_v: nil, inbound_a: nil,
inbound_vluchtnrs: nil, reis_verz: #<BigDecimal:b775ed08,'0.0',4(8)>,
annu_verz: #<BigDecimal:b775eccc,'0.0',4(8)>, boeking_status: nil,
enquete_status: 1, holiday_status: 0, eurenq_status: 9, nieuwsbrief: 99,
reference: nil, kadoboncode: nil, boeking_tijdcode: 1030624003,
servicemail_status: nil, factory_master_id: 1>,] ectect

Now i want to store all the values of the "ticket_fees" in a new array.

like this...

ticket_fee = ["2", "3", "1"]

How can i do this(newbie)

Thanks..remco
--
Posted via http://www.ruby-....

2 Answers

Florian Gilcher

2/26/2009 9:39:00 AM

0

values = ary.collect {|elem| elem.ticket_fees }

In Rails and newer Ruby environments, you can also do this:

values = ary.collect( &:ticket_fees )

On Feb 26, 2009, at 10:12 AM, Remco Swoany wrote:

> Hi,
>
> the array below is the output from a find(:all)
>
> [#<Boekingen affnr: "vl999", pnr: "MA5OSG", agent: "monties",
> ticket_prijs: #<BigDecimal:b775f4c4,'0.138E3',4(12)>, aantal_pers: 2,
> ticket_fees: nil, res_kosten: nil, commissie: nil, ticket_verz: nil,
> tax: nil, total_prijs: #<BigDecimal:b775f230,'0.36316E3',8(12)>,
> bet_id:
> nil, vertrek_id: "AMS", bestemming_id: "MAD", airline_id: "HV",
> cabinclass: nil, type: nil, eligibility: nil, supplier: nil,
> heen_datum:
> 1020204000, terug_datum: 1049061600, outbound_v: nil, outbound_a: nil,
> outbound_vluchtnrs: nil, inbound_v: nil, inbound_a: nil,
> inbound_vluchtnrs: nil, reis_verz: #<BigDecimal:b775ed08,'0.0',4(8)>,
> annu_verz: #<BigDecimal:b775eccc,'0.0',4(8)>, boeking_status: nil,
> enquete_status: 1, holiday_status: 0, eurenq_status: 9, nieuwsbrief:
> 99,
> reference: nil, kadoboncode: nil, boeking_tijdcode: 1030624003,
> servicemail_status: nil, factory_master_id: 1>,] ectect
>
> Now i want to store all the values of the "ticket_fees" in a new
> array.
>
> like this...
>
> ticket_fee = ["2", "3", "1"]
>
> How can i do this(newbie)
>
> Thanks..remco
> --
> Posted via http://www.ruby-....
>

--
Florian Gilcher

smtp: flo@andersground.net
jabber: Skade@jabber.ccc.de
gpg: 533148E2


Antonio Cangiano

2/26/2009 1:18:00 PM

0

[Note: parts of this message were removed to make it a legal post.]

On Thu, Feb 26, 2009 at 4:39 AM, Florian Gilcher <flo@andersground.net>wrote:

> values = ary.collect {|elem| elem.ticket_fees }
>
> In Rails and newer Ruby environments, you can also do this:
>
> values = ary.collect( &:ticket_fees )
>

But be careful with the latter form (known as "symbol to proc"). In Ruby 1.8
it's much slower than using a regular block.

Cheers,
Antonio
--
http://antonioca... - Zen and the Art of Programming
http://mat... - Mathematics is wonderful!
http://sta... - Aperiodico di resistenza informatica
Follow me on Twitter: http://twitter.com...
Recently completed "Ruby on Rails for Microsoft Developers" for Wrox.