Problem with render in helper methods

I have a helper that renders a partial. The partial may or may not
exist. If it does not exist then a different partial is rendered
instead. Like this:

def render_my_partial my_partial
begin
render :partial => “folder1/#{my_partial}”
rescue
render :partial => “folder2/#{my_partial}”
end
end

This in itself works fine. One of my layouts uses this helper to display
one of two partials:

<%=render_my_partial ‘display_area’%>

If one of these partials uses another helper that itself uses the above
helper to render one of two other partials:

def info_panel
render_my_partial ‘info_panel’
end

This fails.

However, if I replicate the above code directly in the second helper
function then it works.

def info_panel
begin
render :partial => “folder1/info_panel”
rescue
render :partial => “folder2/info_panel”
end
end

I don’t understand this. I could leave it with duplicated code but it
isn’t very DRY and I’d like to understand why this does not work as I
expect. Can anyone help explain this to me?

Thanks in advance!

Ignore this. Blonde moment :slight_smile:

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