How do I identify the initiating View from within a Helper?

I would like to call a helper method from my View to construct a sidebar
menu. The menu is contextual, so ideally I would like to do something
like this:

View

<%= sidebar_menu %>

Helper

def sidebar_menu
case calling_view
when ‘view_identifier
… build menu…
end
end

where ‘calling_view’ is the key that points to the
view_identifier’, if this this makes sense!

I could send a parameter with the method call (eg
sidebar_menu(‘search_screen’)), but I consider this redundant.

Is this possile? Is there a better approach?

-Lindsay

Lindsay B. wrote:

def sidebar_menu
sidebar_menu(‘search_screen’)), but I consider this redundant.

Is this possile? Is there a better approach?

The action name is available as “action_name”.

As for the view name, all I can see after a quick look through
the Rails code is the variable “@first_render”. It’ll work,
but is undocumented, and so is not guaranteed to work in future
versions.


We develop, watch us RoR, in numbers too big to ignore.

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