74 votes

HTML incorporé dans le corps du link_to dans Rails

Quelle est la meilleure façon d'obtenir du HTML intégré dans le corps d'un lien généré par la méthode link_to ?

Je veux essentiellement les éléments suivants :

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

J'ai essayé de procéder comme suggéré dans le document suivant Rails et la balise <span> mais sans succès. Mon code ressemble à ce qui suit :

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 %>
 #...

114voto

Valdis Points 1508

Essayez de cette façon

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

0 votes

Appliqué à mon exemple, l'appel est devenu : link_to raw(text), {:pics => true}, :class => 'highlight

62voto

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

2 votes

Ok, j'ai juste : <%= link_to destroy_user_session_path, method: :delete do %>

32voto

Parhs Points 611

Depuis 2016, je préfère cette méthode.

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

6 votes

Je pense qu'il devrait <%= link_to my_path do %> This is a <strong>ape</strong> <% end %>

17voto

Syed Points 392

Vous pouvez utiliser html_safe

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

4voto

Burningpony Points 19

Je ne suis pas sûr que ce soit la meilleure solution.

Mais j'ai réussi à placer la plupart des aides de visualisation dans l'appel content_tag.

Il ne serait pas mal non plus d'appeler un .html_safe

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

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X