Embedded HTML in link_to body in Rails

What is the best way to go about getting embedded HTML in the body of a link generated with the link_to method?

I basically want the following:

<a href="##">This is a <strong>link</strong></a>

I have been trying to go about this as suggested in Rails and the <span> tag but with no luck. My code looks like the following:

item_helper.rb

def picture_filter
    #...Some other code up here
    text = "Show items with " + content_tag(:strong, 'pictures')
    link_to text, {:pics => true}, :class => 'highlight'
end

item_view.html.erb

 #...
 <%=raw picture_filter %>
 #...

Solution 1:

Try it this way

<%= link_to(raw("a <strong>strong</strong> link"),{:pics => true},{ :class => 'highlight'})  %>

Solution 2:

= link_to "http://www.example.com" do
   <strong>strong</strong>

Solution 3:

As of 2016 I prefer this method.

<%= link_to my_path do %>
    This is a <strong>ape</strong>
<% end %>

Solution 4:

you can use html_safe

<%= link_to ("<i class='someIcon'></i> Link").html_safe %>

Solution 5:

Not sure if this is the best way.

But I have been very successful in staking alot of the view helpers inside the content_tag call.

It also might not hurt to call a .html_safe

link_to(content_tag(:span, "Show yada " + content_tag(:strong, "Pictures")), {:pics => true})