# Query question

**URL:** <https://www.ruby-forum.com/t/query-question/167702>\
**Category:** Rails\
**Created:** [May 11, 2009, 7:00pm UTC](https://www.ruby-forum.com/t/query-question/167702 "2009-05-11T19:00:17Z")\
**Posts on this page:** 7\
**Page:** 1

<div class="post-metadata">

**Author:** ![tharrisx](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/t/e19adc/32.png) [@tharrisx](https://www.ruby-forum.com/u/tharrisx)\
**Post date:** [May 11, 2009, 7:00pm UTC](https://www.ruby-forum.com/t/query-question/167702/1 "2009-05-11T19:00:17Z")

</div>

Hi there,

Why does the following query…

ser = ‘ser’  
@user = (‘U’+ser).find(:first)

…not equal this one:

@user = User.find(:first)

?

What needs to be done so it will work?

Thanks for your help!  
Tom

---

<div class="post-metadata">

**Author:** ![tharrisx](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/t/e19adc/32.png) [@tharrisx](https://www.ruby-forum.com/u/tharrisx)\
**Post date:** [May 11, 2009, 7:51pm UTC](https://www.ruby-forum.com/t/query-question/167702/2 "2009-05-11T19:51:39Z")

</div>

> @user = User.find(:first)
> 
> ?
> 
> What needs to be done so it will work?

> > ser = ‘ser’  
> > =\> “ser”
> 
> > user = ‘U’ + ser  
> > =\> “User”
> 
> > user.class  
> > =\> String
> 
> > User.class  
> > =\> Class
> 
> > user.constantize.class  
> > =\> Class
> 
> > user.constantize.find(:first)  
> > User Load (1.2ms) SELECT \* FROM “users” LIMIT 1  
> > =\> #\<User id: 1,…

---

<div class="post-metadata">

**Author:** ![tharrisx](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/t/e19adc/32.png) [@tharrisx](https://www.ruby-forum.com/u/tharrisx)\
**Post date:** [May 11, 2009, 8:39pm UTC](https://www.ruby-forum.com/t/query-question/167702/3 "2009-05-11T20:39:36Z")

</div>

Great - thanks!

---

<div class="post-metadata">

**Author:** ![tharrisx](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/t/e19adc/32.png) [@tharrisx](https://www.ruby-forum.com/u/tharrisx)\
**Post date:** [May 15, 2009, 7:27pm UTC](https://www.ruby-forum.com/t/query-question/167702/4 "2009-05-15T19:27:20Z")

</div>

1 question back, though:

What if need to end up having…

@user = User.find(:first)

…based on a case like this:

@u = ‘@u’  
ser = ‘ser’

Is there something as “objectize”? 🙂

How would the following need to be corrected?

(@u+ser).objectize = User.find(:first)

Thanks for your help!  
Tom

---

<div class="post-metadata">

**Author:** ![tharrisx](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/t/e19adc/32.png) [@tharrisx](https://www.ruby-forum.com/u/tharrisx)\
**Post date:** [May 15, 2009, 7:35pm UTC](https://www.ruby-forum.com/t/query-question/167702/5 "2009-05-15T19:35:17Z")

</div>

instance\_variable\_set(@u + ser, User.find(:first))

---

<div class="post-metadata">

**Author:** ![tharrisx](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/t/e19adc/32.png) [@tharrisx](https://www.ruby-forum.com/u/tharrisx)\
**Post date:** [May 11, 2009, 8:48pm UTC](https://www.ruby-forum.com/t/query-question/167702/6 "2009-05-11T20:48:19Z")

</div>

which can get you to some cool code like:

@object =  
params[:controller].singularize.camelcase.constantize.find(params[:id])

---

<div class="post-metadata">

**Author:** ![tharrisx](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/t/e19adc/32.png) [@tharrisx](https://www.ruby-forum.com/u/tharrisx)\
**Post date:** [May 15, 2009, 9:25pm UTC](https://www.ruby-forum.com/t/query-question/167702/7 "2009-05-15T21:25:46Z")

</div>

Thanks!
