2011-04-26 5 views
0

J'ai suivi un tutoriel @Noupe dans l'intention d'apprendre Rails. Ça va bien et l'application fonctionne, mais je suppose qu'elle a été écrite pour Rails 2, donc il y a des morceaux de code obsolètes utilisés.Rails 3 vs Rails 2 Routage Problème

Alors que j'ai résolu la plupart de ceux-ci, j'ai un problème restant avec le routage. Les rails 2 code dans le tutoriel est:

ActionController::Routing::Routes.draw do |map|
map.resources :posts
map.connect ':controller/:action/:id'
map.connect ':controller/:action/:id.:format'
end

Cela fonctionne très bien, mais il est l'ancien code. J'ai essayé de réécrire le code comme suit:

Twitter::Application.routes do
resources :posts
match ':controller/:action/:id'
match ':controller/:action/:id.:format'
end

Il en résulte une erreur lorsque je tente de visiter http://localhost:3000/posts -

routage erreur Aucun résultat de route "/ messages"

Can Quelqu'un suggère où je vais mal? J'ai remarqué que je reçois une erreur de compilateur si j'écris twitter en première ligne (au lieu de Twitter) - puisque mon application s'appelle twitter, j'ai pensé que cela pourrait être le problème, mais cela ne semble pas être le cas.

Toute aide grandement appréciée!

Répondre

1

Il semble que l'appel à la méthode draw vous manque. Essayez de changer la première ligne à la suivante:

Twitter::Application.routes.draw do 
+0

Cela a été résolu - merci pour votre aide! –

+0

Pour référence, la raison pour laquelle je n'avais pas encore fait cela était la section 7.3 des notes de mise à jour de Rails3 - elles indiquent un exemple qui n'inclut pas la méthode draw. –

+0

Mauvais exemple alors, mais heureux d'entendre cela a fonctionné. – DanneManne