webapp2
est une classe et Route
était une fonction définie dans une classe.
webapp2 est rien, mais un mécanisme de routage qui étend le modèle d'application web pour fournir des fonctionnalités supplémentaires:
bâtiment URI : peuvent être construits les routes enregistrés en cas de besoin, en évitant les URIs codées en dur dans l'application code et modèles.
Arguments de mots-clés: Les gestionnaires peuvent recevoir des arguments de mots-clés provenant des URI correspondants.
Routes imbriquées: les routes peuvent être étendues pour correspondre plus que le chemin de requête. Nous allons voir ci-dessous une classe de route qui peut également correspondre à domaines et sous-domaines.
Par exemple:webapp2.Route('/api/users/register/verify/<user_id:\d+>/<signup_token:.+>', handler=HomeHandler, name='verification')
de votre exemple, name='verification'
il est alias votre url ...
dans votre exemple,
votre URL est: '/api/users/register/verify/<user_id:\d+>/<signup_token:.+>'
vous ne pouvez pas vous en souvenir, alors nommez Je vous aider à l'alias avec un mémorable verification
.
de sorte que votre URL, /api/users/register/verify/<user_id:\d+>/<signup_token:.+>
= verification
alias se traduira par url d'origine dans l'exécution
suivant, uri_for()
comme je l'ai dit, vous avez attribué alias pour votre grand URL .. donc vous connaissiez l'alias le plus court. si vous voulez récupérer l'URL d'alias que vous pouvez utiliser cette fonction,
print uri_for('verification')
vous donnera, /api/users/register/verify/<user_id:\d+>/<signup_token:.+>
donc peut-on dire « nom » est utilisé pour faire court URL longue? et c'est pour le facile du développeur seulement? – HamidArrivy
oui .. il ne fera pas l'URL. son alias comme ... il ne s'affichera pas dans la barre d'adresse .. il se traduira en temps d'exécution .. court URL sera assigné en long dans le backend .. python seulement savait que ..il traduira une fois que vous exécutez –
Merci pour cette réponse bien expliquée.! – HamidArrivy