# Variable Method Name

**URL:** <https://www.ruby-forum.com/t/variable-method-name/82144>\
**Category:** Rails\
**Created:** [January 17, 2007, 8:53pm UTC](https://www.ruby-forum.com/t/variable-method-name/82144 "2007-01-17T20:53:14Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![BlackNute](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/b/b9e5f3/32.png) [@BlackNute](https://www.ruby-forum.com/u/BlackNute)\
**Post date:** [January 17, 2007, 8:53pm UTC](https://www.ruby-forum.com/t/variable-method-name/82144/1 "2007-01-17T20:53:14Z")

</div>

Hello List!

I come to you after a long while of troubleshooting and researching to  
no avail. My wish is to reference a class variable whose name is  
stored as a string in another variable. I will try to set up an  
example:

variable\_name = ‘text’  
print @#{variable\_name}

I think that is how it would work, and i think the syntax is nearly  
correct, but… its not.

Any help? Thanks alot guys!

–nathan

---

<div class="post-metadata">

**Author:** ![BlackNute](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/b/b9e5f3/32.png) [@BlackNute](https://www.ruby-forum.com/u/BlackNute)\
**Post date:** [January 17, 2007, 10:09pm UTC](https://www.ruby-forum.com/t/variable-method-name/82144/2 "2007-01-17T22:09:37Z")

</div>

> Any help? Thanks alot guys!

Not quite the same, but let’s say you have an AR model named Foo that  
has  
an attribute named bar, then:

myfoo = Foo.find(:first)  
myfoo.send(‘bar’) # same as myfoo.bar

Maybe that will get you closer…

---

<div class="post-metadata">

**Author:** ![BlackNute](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/b/b9e5f3/32.png) [@BlackNute](https://www.ruby-forum.com/u/BlackNute)\
**Post date:** [January 17, 2007, 10:15pm UTC](https://www.ruby-forum.com/t/variable-method-name/82144/3 "2007-01-17T22:15:38Z")

</div>

On 1/12/07, BlackNute [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:

> variable\_name = ‘text’  
> print @#{variable\_name}

instance\_variable\_get(“@#{variable\_name”)

[http://ruby-doc.org/core/](http://ruby-doc.org/core/)

–  
Chris W.

> **[err.the\_blog](http://errtheblog.com)**
>
> Err the Blog: Ruby and Rails from the front.

---

<div class="post-metadata">

**Author:** ![BlackNute](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/b/b9e5f3/32.png) [@BlackNute](https://www.ruby-forum.com/u/BlackNute)\
**Post date:** [January 17, 2007, 11:56pm UTC](https://www.ruby-forum.com/t/variable-method-name/82144/4 "2007-01-17T23:56:57Z")

</div>

On 1/17/07, Chris W. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:

> On 1/12/07, BlackNute [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:
> 
> > variable\_name = ‘text’  
> > print @#{variable\_name}
> 
> instance\_variable\_get(“@#{variable\_name”)

Whoops, should be

instance\_variable\_get(“@#{variable\_name}”)

of course.

---

<div class="post-metadata">

**Author:** ![BlackNute](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/b/b9e5f3/32.png) [@BlackNute](https://www.ruby-forum.com/u/BlackNute)\
**Post date:** [January 18, 2007, 3:45pm UTC](https://www.ruby-forum.com/t/variable-method-name/82144/5 "2007-01-18T15:45:44Z")

</div>

BlackNute wrote:

> Hello List!
> 
> I come to you after a long while of troubleshooting and researching to  
> no avail. My wish is to reference a class variable whose name is  
> stored as a string in another variable. I will try to set up an  
> example:
> 
> variable\_name = ‘text’  
> print @#{variable\_name}

I had asked questions like this.  
[http://www.ruby-forum.com/topic/93236#187853](http://www.ruby-forum.com/topic/93236#187853)  
[http://www.ruby-forum.com/topic/93682#189535](http://www.ruby-forum.com/topic/93682#189535)

---

<div class="post-metadata">

**Author:** ![BlackNute](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/b/b9e5f3/32.png) [@BlackNute](https://www.ruby-forum.com/u/BlackNute)\
**Post date:** [January 18, 2007, 10:03am UTC](https://www.ruby-forum.com/t/variable-method-name/82144/6 "2007-01-18T10:03:51Z")

</div>

> variable\_name = ‘text’  
> print @#{variable\_name}

eval(“print #{variable\_name}”)

–  
Nedforce Informatica Specialisten B.V.

> **[De domeinnaam Nedforce.nl is te koop.](http://www.nedforce.nl)**
>
> Deze mooie domeinnaam kan al over een paar minuten van jou zijn. Betalen gaat eenvoudig en vertrouwd via iDEAL. Direct na de betaling ontvang je de verhuiscode per e-mail en kun je aan de slag.

+31 (0)53 4500225
