Я думаю, у тебя в голове слишком много вещей.Если вы не пытаетесь сделать что-то очень странное (и нецелесообразное), это сработает:
def link_helper text, controller, action
link_to text, :controller => controller, :action => action
end
Хотя, как вы можете видеть, делать его помощником не стоит - это едва ли проще, чем его функциональностьперенос и гораздо менее гибкий.
Помощник link_to возвращает строку, поэтому его очень просто использовать так, как вы хотите:
def link_helper text
# some helper logic:
controller = @controller || "pages"
action = @action || "index"
# create the html string:
html = "A link to the #{controller}##{action} action:"
html << link_to(text, :controller => controller, :action => action)
html # ruby does not require explicit returns
end