# Range object as a parameter

**URL:** <https://www.ruby-forum.com/t/range-object-as-a-parameter/105321>\
**Category:** Ruby\
**Created:** [May 28, 2007, 8:05pm UTC](https://www.ruby-forum.com/t/range-object-as-a-parameter/105321 "2007-05-28T20:05:59Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![Josselin](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/j/9de0a6/32.png) [@Josselin](https://www.ruby-forum.com/u/Josselin)\
**Post date:** [May 28, 2007, 8:05pm UTC](https://www.ruby-forum.com/t/range-object-as-a-parameter/105321/1 "2007-05-28T20:05:59Z")

</div>

I trying to use a range object from an array of ranges objects as a  
parameter

my\_range = [(0…2), (2…5), (5…10), (10…15), (15…25)]

props = []  
domains = Domain.find(:all)

# keep track of the number of domains

@ props[0] = domains.nitems  
k = params[:id] # can be 0, 1 ,2,3,4

1.step(domains.nitems,1) do |d|  
props[d] = Proposition.find\_by\_range( ( my\_range[k] ) , …  
)  
d = d.next  
end

I got an error : can’t convert String into Integer in the line :  
props[d] = Proposition.find\_by\_range( ( my\_range[k] ) , … )

is is wrong ?

thanks for your help

joss

---

<div class="post-metadata">

**Author:** ![Josselin](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/j/9de0a6/32.png) [@Josselin](https://www.ruby-forum.com/u/Josselin)\
**Post date:** [May 28, 2007, 8:12pm UTC](https://www.ruby-forum.com/t/range-object-as-a-parameter/105321/2 "2007-05-28T20:12:00Z")

</div>

Josselin wrote:

> k = params[:id] # can be 0, 1 ,2,3,4
> 
> 1.step(domains.nitems,1) do |d|  
> props[d] = Proposition.find\_by\_range( ( my\_range[k] ) , … )  
> d = d.next  
> end
> 
> I got an error : can’t convert String into Integer in the line :  
> props[d] = Proposition.find\_by\_range( ( my\_range[k] ) , … )
> 
> is is wrong ?  
> Here’s a guess: k is a String? Array indices can only be Integers -  
> try my\_range[k.to\_i].

---

<div class="post-metadata">

**Author:** ![Josselin](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/j/9de0a6/32.png) [@Josselin](https://www.ruby-forum.com/u/Josselin)\
**Post date:** [May 28, 2007, 10:26pm UTC](https://www.ruby-forum.com/t/range-object-as-a-parameter/105321/3 "2007-05-28T22:26:15Z")

</div>

On 2007-05-28 20:09:43 +0200, Alex Y. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) said:

> > k = params[:id] # can be 0, 1 ,2,3,4  
> > Here’s a guess: k is a String? Array indices can only be Integers -  
> > try my\_range[k.to\_i].

thanks that’s it… I was not searching for the right problem… could  
not find the right solution…

4 years better than 2… don’t know why we have been created like that  
! (or “evolutionned”… ;-)))
