2011-05-03 12 views
6

Tengo el siguiente problema en Ruby on Rails 3. Cuando trato de usar el método link_to en una vista con el parámetro : method =>: delete y un objeto como de costumbre funciona bien.link_to con eliminar y poseer controlador y acción

<%= link_to 'Delete', @car , :confirm => 'Are you sure?', 
          :method => :delete, 
          :remote => true %> 

El problema aparece cuando trato de usar mi propio controlador y la acción:

<%= link_to 'Delete', :id => @car.id, 
         :confirm => 'Are you sure?', 
         :controller => 'truck', 
         :action => 'my_destroy', 
         :method => :delete, 
         :remote => true %> 

no funciona, la url es lo mismo que un encuentro, y el ancla no ha conseguido data-remote y los otros atributos de Rails.

Entonces, ¿cómo podría usar mi propio controlador y acción con link_to y el método delete?

Tengo la ruta en el archivo routes.rb, así que creo que ese no es el problema.

Gracias de antemano.

Respuesta

10

Cuando proporcione su URL como un hash de opciones, necesita tener un poco más claro qué hash es cuál. Pruebe esto:

<%= link_to 'Delete', 
     { :controller => 'truck', :action => 'my_destroy', :id => @car.id }, # your URL details 
     { :confirm => 'Are you sure?', :method => :delete, :remote => true} # your link options %> 
+1

Gracias! ¡funcionó! –

Cuestiones relacionadas