2011-04-30 1 views
12

¿Cómo puedo hacer algo como esto en HAML (dentro de la aplicación Rails de manera que importe)?¿Cómo hago esta etiqueta de enlace en HAML?

<li><a href="#" title="Meet the Team"><strong>Team <em>16 members</em></strong></a></li> 

Editar: cómo también para hacerlo con link_to y una ruta de pages_team?

Respuesta

10
%li= link_to raw('<strong>Team <em>16 members</em></strong>'), pages_team, :title => 'Meet the Team' 

o

%li= link_to content_tag(:strong, raw("Team #{content_tag(:em, '16 members)}")), pages_team, :title => 'Meet the Team 
32

El método básico se vería así ...

%li 
    %a{ :href => "#", :title => "Meet the Team" } 
    %strong 
     Team 
     %em 16 members 

O usando la nueva sintaxis de hash ...

%li 
    %a{ href: "#", title: "Meet the Team" } 
    %strong 
     Team 
     %em 16 members 
+3

También tenga en cuenta que se puede suministrar atributos, ya sea a través de '{} 'que contiene el código Ruby o simplemente'() 'que contiene el marcado HTML. '% a (href =" # "title =" Meet the Team ")' también funcionará. –

+0

gracias! ¡servicial! ¡Vosotros dos! por favor, mira mi edición ... que debería haber agregado a la pregunta original. – Meltemi

+2

Tenga en cuenta que (según su propia documentación) Haml generalmente está destinado para el marcado estructural. Como ha demostrado @Unixmonkey, generalmente es más fácil y preferible simplemente ingresar al HTML sin procesar al producir marcas de contenido no estructural. – Phrogz

6

creo la mejor manera de hacerlo es:

%li 
    = link_to "#" do 
    Meet the team 
    %strong 
     Team 
     %em 16 members 

Usando haml y carriles sintaxis juntos

2

Hay un método muy simple disponible en Haml y rieles, aquí está:

= link_to "hyperlink name", hyperlink_path 
+0

Esta no es la respuesta que el que pregunta quiere, supongo? – technophyle

Cuestiones relacionadas