James Gray
4/26/2005 12:10:00 AM
On Apr 25, 2005, at 7:04 PM, Kevin McConnell wrote:
> What's a good way to get at a Class instance, from a string containing
> its name?
>
> For example, say I have a string "Customer", and want to call
> Customer.my_class_method(). I realise I could do something like:
>
> # class_name = "Customer"
> result = eval("#{class_name}.my_class_method()")
>
> ....but it smells like a hack to me, and so I suspect there's a more
> "proper" way to get at the object I need...
>
> Any pointers would be much appreciated!
You're looking for Module.const_get(). Use it to get the class object,
then call the method.
Hope that helps.
James Edward Gray II