Come passare un parametro aggiuntivo in una link_to?

Ci ero riuscito e guardando gli esempi in rete mi ricordavo anche di
averlo fatto correttamente, fatto stà che con la seguente istruzione:

<%= link_to image_tag(‘delete.gif’),{ :controller => “users”, :method =>
:delete }, :action => “destroy”, :user_id => user.id, :prova => “ciao”,
:confirm => “Vuoi eliminare l’utente #{user.cognome} #{user.name}?”,
:class => ‘list_links’ %>

continua ad andare sulla “show” dell’utente :frowning:

Il parametro che sto provando a passare é :prova.

dove sbaglio?

Grazie a tutti

controlla le rotte con “rake routes” e controlla anche cosa genera
link_to così come lo hai espresso.

ciao,
A.

Il 05/07/2010 18:11, pezzuya … ha scritto:

2010/7/5 pezzuya … [email protected]:

Ci ero riuscito e guardando gli esempi in rete mi ricordavo anche di
averlo fatto correttamente, fatto stà che con la seguente istruzione:

<%= link_to image_tag(‘delete.gif’),{ :controller => “users”, :method =>
:delete }, :action => “destroy”, :user_id => user.id, :prova => “ciao”,
:confirm => “Vuoi eliminare l’utente #{user.cognome} #{user.name}?”,
:class => ‘list_links’ %>

:method va nell’hash delle html_options, scambialo di posto
con il parametro la :action

ho fatto le seguenti prove:

<%= link_to image_tag(‘delete.gif’), html_options = { :controller =>
“users”, :action => “destroy”, :method => :delete, :user_id => user.id
}, :prova => “ciao ale”, :confirm => “Vuoi eliminare l’utente
#{user.cognome} #{user.name}?”, :class => ‘list_links’ %>

<%= link_to image_tag(‘delete.gif’), html_options = {:method => :delete,
:user_id => user.id }, :controller => “users”, :action => “destroy”,
:prova => “ciao ale”, :confirm => “Vuoi eliminare l’utente
#{user.cognome} #{user.name}?”, :class => ‘list_links’ %>

<%= link_to image_tag(‘delete.gif’), html_options = { :controller =>
“users”, :action => “destroy”}, :method => :delete, :user_id => user.id,
:prova => “ciao ale”, :confirm => “Vuoi eliminare l’utente
#{user.cognome} #{user.name}?”, :class => ‘list_links’ %>

ma niente :frowning:

così funziona o meglio così era nella sua versione originale

<%#= link_to image_tag(‘delete.gif’), user_path(user), :confirm => “Vuoi
eliminare l’utente #{user.cognome} #{user.name}?”, :method => :delete,
:class => ‘list_links’ %>

se però provo qualcosa di questo tipo:

<%= link_to image_tag(‘delete.gif’), user_path(user), :confirm => “Vuoi
eliminare l’utente #{user.cognome} #{user.name}?”, :method => :delete,
:class => ‘list_links’, :parametri => {:prova => “ciao”} %>

o più semplicemente:

<%= link_to image_tag(‘delete.gif’), user_path(user), :confirm => “Vuoi
eliminare l’utente #{user.cognome} #{user.name}?”, :method => :delete,
:class => ‘list_links’, :prova => “ciao”%>

loggando params non riesco a ritrovare la mia stringa “ciao”.

On Tue, Jul 6, 2010 at 4:01 PM, pezzuya … [email protected]
wrote:

ho risolto con:

<%= link_to image_tag(‘delete.gif’), {:controller => “users”, :action =>
“destroy”, :user_id => user.id, :prova => “ciao ale”}, :confirm => “Vuoi
eliminare l’utente #{user.cognome} #{user.name}?”, :method => :delete,
:class => ‘list_links’ %>

questo dovrebbe funzionare (non l’ho testato :slight_smile:

<%= link_to image_tag(‘delete.gif’), user_path(user, :prova =>
“ciao”), :confirm => “Vuoi
eliminare l’utente #{user.cognome} #{user.name}?”, :method => :delete,
:class => ‘list_links’%>

perche’ il parametro in piu’ che vuoi passare deve essere incluso
nell’URL a cui punta il link, e questo lo fai passandolo all’helper
che genera la URL (in coda dopo i parametri che generano la route che
ti interessa, in questo caso dopo ‘user’)

ciao,
Luca

ho risolto con:

<%= link_to image_tag(‘delete.gif’), {:controller => “users”, :action =>
“destroy”, :user_id => user.id, :prova => “ciao ale”}, :confirm => “Vuoi
eliminare l’utente #{user.cognome} #{user.name}?”, :method => :delete,
:class => ‘list_links’ %>

GRAZIE a tutti!