web-dev-qa-db-fra.com

Rails 3 - link_to avec image_tag + text

<%= link_to ((image_tag 'image.png'), 
        url_for({:controller => 'controller_name', :action => 'action_name'}), 
            :class => 'quick', 
            :remote => true) %>

Cette partie du code me générera image.png sous forme de lien. J'aurais besoin que cette image ajoute du texte (image + texte), j'ai essayé quelque chose comme:

<%= link_to ((image_tag 'image.png', 'text'), 
        url_for({:controller => 'controller_name', :action => 'action_name'}), 
            :class => 'quick', 
            :remote => true) %>

Et des manières similaires, mais chacune de ces tentatives se terminait par un message d'erreur sur la syntaxe incorrecte ... Quelqu'un pourrait-il m'aider, s'il vous plaît, comment je devrais y remédier?

Merci d'avance.

19
user1946705

Essaye ça.

<%= link_to image_tag('/images/image.png') + "some extra text", url_for({:controller => 'controller_name', :action => 'action_name'}), :class => 'quick', :remote => true %>
45

Une solution légèrement plus sexy?

<%= link_to image_tag("image.png", :alt => "Image Description", :class => "css"), root_path %>
9
Andrew Hendrie

Essaye ça:

<%= link_to (image_tag('image.png') + text, 
        url_for({:controller => 'controller_name', :action => 'action_name'}), 
            :class => 'quick', 
            :remote => true) %>

Le premier argument est la partie texte et avec image_tag vous créez du HTML, mais vous pouvez facilement ajouter des éléments.

1
ayckoster

J'ai utilisé ce qui suit et cela fonctionne très bien:

<%= link_to image_tag("logo.jpg"), controller: 'welcome' %>
0
user3732767