custom view helper

How would I take the following and make it a view helper?

site.name <br /> site.address <br /> site.city, site.state.upcase, site.zipcode

Chris Habgood wrote:

How would I take the following and make it a view helper?

site.name <br /> site.address <br /> site.city, site.state.upcase, site.zipcode

Try following code

return "#{site.name} <br /> #{site.address} <br /> @{site.city},#{site.state.upcase}, #{site.zipcode}"

Thanks, I am looking to put in in the helper module as a view helper.

Chris Habgood wrote:

Thanks, I am looking to put in in the helper module as a view helper.

Hi Chris,

You can use the above code by putting it in a helper function like

def function_name(site)    return "#{site.name} <br /> #{site.address} <br /> @{site.city},#{site.state.upcase}, #{site.zipcode}"

end

You need to include the helper and call function from view page, like

<%= function_name(site) %>

Thanks. How would I insert erb into this. <%= link_to site.name, site_path(site) %>. I cannot seem to get it to interpret the erb it comes out like a string.

I like to use %Q{}'s so I don't have to sweat quotes... see the last line for how to use link_to (or any other view helper for that matter)

def function_name(site)    %Q{#{site.name}<br />       #{site.address}<br />       #{site.city}, #{site.state.upcase}, #{site.zipcode}<br />       #{link_to site.name site_path(site)}      } end

Ok, I mislead you a bit, it is in the controller for a google map display. I am getting:

undefined method `link_to' for #<SitesController:0x6ccf090>

Ok, I mislead you a bit, it is in the controller for a google map display. I am getting:

undefined method `link_to' for #<SitesController:0x6ccf090>

This works for me in 2.3.5

ActionController::Base.helpers.link_to(....)