On Feb 19, 2009, at 6:20 AM, Cyrus Dev wrote:
> Hi,
> thanks
>
> but I have instance like this
>
> @restaurant= Restaurant.find(:all,
:select => 'restaurants.*, 22 AS diffinmiles'
> )
>
> now for each i have to add one more column
>
> @restaurant.each_with_index do |c,index|
>
>     @restaurant[index]['diffinmiles'] =22
>
> end
>
> but this is not work
>
> so that i have to not change in view file and i can direct access like
> db values ?
>
> any idea ?

Except that is not really what you meant, I'm sure.  If you need some  
other method to be available on the Restaurant model, just add it in!

class Restaurant
   def diffinmiles(my_location)
     # do some calculations with other attributes and the passed  
parameters
   end
end

> Frederick Cheung wrote:
>> On 19 Feb 2009, at 10:54, Cyrus Dev wrote:
>>> Hello all
>>>
>>> any one has idea how to add new column to existing hash array ?
>>
>> by hash array do you mean an array of hashes ?
>>
>>> I have one hash instance like
>>> @restaurant
>>>
>>> using each with index i m looping it and want to add new key and  
>>> value
>>> to each row
>>>
>> unless i'm missing part of the question, you just do it.
>>
>> array_of_hashes.each_with_index do |some_hash, i|
>>   some_hash[:foo] = :bar
>> end
>>
>> If you want to change the array you are iterating over, that isn't
>> supported.
>>
>> Fred

You're not actually changing the array here as Fred suggests, you're  
just modifying each member which is perfectly fine (even though, as I  
said, not what I think you really want to do here).

-Rob

Rob Biedenharn          http://agileconsultingllc.com
[email protected]


--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "Ruby 
on Rails: Talk" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/rubyonrails-talk?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to