Accessing attributes

I have a name of an attribute and I need to get its value and set a new
value for it:

x1 = = x2

How do I do that if the name of the attribute ‘foo’ is a var?
I thought about doing this:

attribute_name = ‘foo’

x1 = a.attributes[attribute_name]
a.attributes[attribute_name] = x2

but this is a bypass and I’m quite sure it would cause problems.
I know I could use ‘eval’, but I’d rather use it only as the last
Is there a bette option?

You could try this:

attr = ‘name’

get the attribute


set the attribute

a.send("#{attr}=", “New Name”)

On 1/29/06, r00by n00by [email protected] wrote:

Posted via

Rails mailing list
[email protected]

Cody F.

This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.

| Privacy Policy | Terms of Service | Remote Ruby Jobs