2012-07-04 17 views
5

Estoy usando Rails 3, tengo un link_to with method: delete, pero cuando hago clic en este enlace va a la acción show en lugar de destruir.Borrar el enlace va a mostrar el método

mi pregunta es cómo solucionar este problema?

gracias de antemano.

código: <%= link_to 'Delete', list_path(@list.id), :method => :delete, :confirm => 'Are you sure?' %>

+0

Probablemente quiera echar un vistazo a preguntas similares a esta: http://stackoverflow.com/questions/3774925/delete-link-sends-get-instead-of-delete-in-rails-3-view –

Respuesta

6

No tiene los jquery y jquery_ujs bibliotecas incluidas en el archivo de application.js, o que ni siquiera estamos incluyendo su archivo application.js en app/views/layouts/application.html.erb. Esto se realiza normalmente con esta línea:

<%= javascript_include_tag "application" %> 
0

Hola puede probar esto:

application.html.erb:

<%= javascript_include_tag "http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js", "jquery.rails.js" %> 

y su código de enlace debe ser como este:

<%= link_to "<i class='icon-trash'></i> Delete".html_safe, item, :confirm => "Are you sure you want to delete item: " + item.name + "?" ,:method => :delete%> 

y su controlador debería tener esto:

def destroy 
@item = Item.find(params[:id]) 
if @item.destroy 
    redirect_to items_path, :notice => "Successfully deleted an item." 
else 
    redirect_to items_path, :notice => "Failed to delete an item." 
end 
end 
Cuestiones relacionadas