I am trying to call a method where the name is based on a parameter.
For example: if sec_id = 1 I want to call template1
if sec_id = 2 I want to call template2 …
Without doing if else statements, which is not reasonable for the amount
of possible sec_id’s, is there a way to say something like template and
concatenate on the sec_id? to get template1, template2, template…
I know you can do this to get string concatenation but I can’t seem to
use that at all as a method name, just a string.
Thanks in advance,
Chris
On Feb 2, 2008, at 2:43 PM, Chris H. wrote:
I am trying to call a method where the name is based on a parameter.
For example: if sec_id = 1 I want to call template1
if sec_id = 2 I want to call template2 …
Without doing if else statements, which is not reasonable for the
amount
of possible sec_id’s, is there a way to say something like template
and
concatenate on the sec_id? to get template1, template2, template…
Sure:
obj.send(“template#{sec_id}”)
Hope that helps.
James Edward G. II
obj.send(“template#{sec_id}”)
awesome, I have used the string concatenation in rails for links and
action calls but never needed it for this. Thanks a lot
Chris