Let’s say I have the following hash:
{ :foo => 'bar', :baz => 'qux' }
How could I dynamically set the keys and values to become instance variables in an object…
class Example
def initialize( hash )
... magic happens here...
end
end
… so that I end up with the following inside the model…
@foo = 'bar'
@baz = 'qux'
?
The method you are looking for is
instance_variable_set. So:Or, more briefly,
If your instance variable names are missing the “@” (as they are in the OP’s example), you’ll need to add them, so it would be more like: