Url_for et link_to

Bonjour,

je n’arrive pas bien a comprendre la différence entre url_for et link_to.
J’aimerais une confirmation

url_for permet de générer un url alors que link fait un lien vers qqch.
si j’ai besoin de faire un vers une action j’utiliserais link_to

Gracias

Bolo M. wrote:

Bonjour,

je n’arrive pas bien a comprendre la différence entre url_for et link_to.
J’aimerais une confirmation

url_for permet de générer un url alors que link fait un lien vers qqch.
si j’ai besoin de faire un vers une action j’utiliserais link_to

C’est bien ca.


Sébastien Grosjean - ZenCocoon

link_to s’utilise dans les vues, pour générer un lien vers
quelquechose, alors que url_for s’utilise pour générer une route.

L’un ne peut se substituer à l’autre !

link_to utilise url_for et enveloppe le tout dans une balise

def link_to(name, options = {}, html_options = nil,
*parameters_for_method_reference)
[…snip…]

    url = options.is_a?(String) ? options : self.url_for(options,

*parameters_for_method_reference)
“<a href=”#{url}"#{tag_options}>#{name || url}"
end

2006/9/18, Guillaume G. [email protected]:

On 9/18/06, Guillaume Zifro DESRAT wrote:

link_to s’utilise dans les vues, pour générer un lien vers
quelquechose, alors que url_for s’utilise pour générer une route.

L’un ne peut se substituer à l’autre !

link_to utilise url_for et enveloppe le tout dans une balise

Et pour compléter, il y a 2 méthodes url_for, 1 dans ActionController
1 dans ActionView ; le link_to d’AV utilise url_for d’AV qui utilise
l’url_for
d’AC qui utilise UrlRewriter qui utilise … les routes. :slight_smile:

РJean-Fran̤ois.

Merci pour ce complement d’information

2006/9/18, Jean-François [email protected]:

Bolo M. wrote:

Merci pour ce complement d’information

2006/9/18, Jean-François [email protected]:

Moi personnellement j’utilise url_for lorsque je programme en Ajax
surtout.

Par exemple avec link_to_remote c’est essentiel pour concevoir le lien
href et garder la compatibilite avec les navigateurs sans javascript.

Par exemple :
<%= link_to_remote “Mon lien”, { url => { :action => “add” }, :update =>
“add_div” }, href => url_for( :action => “add” ) %>