2 votes

Comment ruby on rails fait-il correspondre une requête http à une fonction handler ?

Je suis nouveau sur le site des RdR, alors pardonnez-moi si ma question est stupide.

Je cherchais routes.rb et a trouvé ces deux lignes :

get "question/question"
get "question/answer"

Mais il n'a pas été fait mention des fonctions auxquelles elles correspondent.

J'ai essayé de voir comment elles sont mappées aux fonctions et dans tous les tutoriels ou documents de référence que j'ai trouvés sur le net, les demandes étaient hachées en noms de fonctions.

Je n'ai donc pas été en mesure de comprendre le routage dans ce cas. Quelqu'un peut-il me donner le nom de certains fichiers à consulter ou des documents adaptés aux débutants qui expliquent clairement le routage, en supprimant la partie magique ?

0voto

Dave Newton Points 93112

Regardez le QuestionsController et le question y answer méthodes.

Véase ces documents de routage pour plus de détails sur le fonctionnement du routage pour ces types de chemins.

0voto

Michael Durrant Points 30342

Autorisez les valeurs par défaut lorsque cela est possible.

Ces lignes

get question/question

et

get question/answer

signifie répondre à get les demandes qui utilisent une url avec question/question o question/answer pour être traité par le :

  1. question et le question méthode
  2. question et le answer méthode

Vous êtes peut-être plus habitué à travailler avec des constructions telles que :

get 'users/change_district/:district_id' => "users#set_district", :as => 'change_district'

qui vous permettent de spécifier quel contrôleur (users) et quelle action (set_district)

Si, toutefois, vous omettez certaines parties, le routeur utilisera ce que vous donnez et utilisera les valeurs par défaut pour tout ce qui n'est pas spécifié.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X