je les itinéraires suivants mis en place dans mon dossier routes.rb:Rails ne tient pas compte route de collecte et va de pair avec l'action show au lieu
resources :people do
collection do
get :search
end
end
Quand je fais une action get sur l'url: http://localhost:3000/people/search.json?term=stepeb, les rapports de serveur qu'il répond avec l'action show, avec le paramètre term correct, mais possède également un paramètre id, défini sur "search".
Le problème, comme je le vois, sont les deux urls l'url show serait:
/people/:id
et je crois que le routeur est correspondant à cette voie avant qu'il ne soit à/personnes/recherche
Si tel est le cas, comment les routes basées sur la collection fonctionneraient-elles? Ne seraient-ils pas tous attrapés par l'action de spectacle?
La partie pertinente des routes râteau est la suivante:
search_people GET /people/search(.:format) {:action=>"search", :controller=>"people"}
GET /people(.:format) {:action=>"index", :controller=>"people"}
people POST /people(.:format) {:action=>"create", :controller=>"people"}
new_person GET /people/new(.:format) {:action=>"new", :controller=>"people"}
GET /people/:id(.:format) {:action=>"show", :controller=>"people"}
PUT /people/:id(.:format) {:action=>"update", :controller=>"people"}
person DELETE /people/:id(.:format) {:action=>"destroy", :controller=>"people"}
edit_person GET /people/:id/edit(.:format) {:action=>"edit", :controller=>"people"}
Je ne sais pas quel est le problème, mais cela devrait certainement fonctionner comme prévu. (Je me demande si le format .json pose des problèmes.) Pouvez-vous nous donner la sortie de 'rake routes'? –
J'ai ajouté .json quand je l'ai vu ne fonctionne pas comme prévu. N'a pas fait la différence. – midas06