2009-08-17 9 views
2

J'utilise le code suivant pour carte mes ressources pour mon contrôleur de produits:ressources RoR: Aucune action a répondu à 1


    map.namespace :admin do |admin| 
     admin.resources :products 
    end 

À mon avis j'utilise


link_to 'Edit', edit_admin_product_path(product) 

qui résulte dans l'URL/admin/products/1/modifier

quand je suis en cliquant sur le lien que je reçois

Acti Unknown sur Aucune action n'a répondu à 1

Je suppose que cela ne correspond pas correctement à l'action d'édition. Je n'ai aucune idée de ce qu'il faut faire.

Répondre

1

L'itinéraire est valide sinon il serait exploser lorsque vous essayez de créer votre lien. Votre contrôleur de produit a-t-il une action d'édition?

Habituellement, lorsque je place un espace de noms dans mes routes, il suit mon contrôleur et ses vues. Par exemple, le chemin complet serait

/controllers/admin/products_controller.rb 

/views/admin/products/edit.html.erb 

Vous devez aussi mettre un espace de noms dans votre contrôleur aussi:

class Admin::ProductsController < ApplicationController 
1

Avez-vous ces lignes dans vos itinéraires dossier?

map.connect ':controller/:action/:id' 
map.connect ':controller/:action/:id.:format' 

Si oui, assurez-vous qu'ils sont ci-dessous vos lignes de route de ressources. Ces lignes devraient toujours être près du bas de votre routes.rb parce qu'elles sont génériques. Plus la route est spécifique, plus elle devrait être haute.

Questions connexes