Maison > développement back-end > Tutoriel Python > Comment passer des paramètres dans l'URL Django

Comment passer des paramètres dans l'URL Django

高洛峰
Libérer: 2017-02-27 16:54:40
original
2176 Les gens l'ont consulté

1 Sans paramètres

L'URL de configuration et sa vue sont les suivantes :

(r'^hello/$', hello)
 
def hello(request):
  return HttpResponse("Hello World")
Copier après la connexion

Visitez http:/ /127.0 .0.1:8000/hello, le résultat de sortie est "Hello World"

2 Passez un paramètre
pour configurer l'URL et sa vue comme suit Spécifiez un paramètre dans l'URL via une expression régulière :

(r'^plist/(.+)/$', helloParam)
 
def helloParam(request,param1):
  return HttpResponse("The param is : " + param1)
Copier après la connexion

Visitez http://127.0.0.1:8000/plist/china, le résultat de sortie est "Le paramètre est : china"

3 Passer plusieurs paramètres
Reportez-vous au deuxième cas, en prenant comme exemple le passage de deux paramètres, configurez l'URL et sa vue comme suit, spécifiez deux paramètres dans l'URL via des expressions régulières :

(r'^plist/p1(\w+)p2(.+)/$', helloParams)
 
def helloParams(request,param1,param2):
  return HttpResponse("p1 = " + param1 + "; p2 = " + param2)
Copier après la connexion

Visitez http://127.0.0.1:8000/plist/p1chinap22012/Le résultat est "p1 = Chine ; p2 = 2012"

Comme cela peut être vu d'ici, les paramètres de la vue sont basés sur l'expression régulière de l'URL, mis en correspondance dans l'ordre et attribués automatiquement. Bien que cela puisse permettre le transfert d'un nombre illimité de paramètres, cela n'est pas assez flexible. L'URL semble déroutante et, comme il s'agit d'une correspondance régulière, elle est sujette aux erreurs dans certains cas.

4 Transmettez les paramètres via le traditionnel "?"

Par exemple, http://127.0.0.1:8000/plist/?p1=china&p2=2012, après le '?' url, cela signifie passer des paramètres, deux paramètres p1 et p2 sont passés ici.

En transmettant les paramètres de cette manière, les problèmes causés par des erreurs de correspondance régulières ne se produiront pas. Dans Django, l'analyse de ces paramètres est obtenue via la méthode request.GET.get.

L'URL de configuration et sa vue sont les suivantes :

(r'^plist/$', helloParams1)
 
def helloParams(request):
  p1 = request.GET.get('p1')
  p2 = request.GET.get('p2')
  return HttpResponse("p1 = " + p1 + "; p2 = " + p2)
Copier après la connexion

Le résultat de sortie est "p1 = Chine ; p2 = 2012 »

Pour plus d'articles liés à la méthode de transmission des paramètres dans l'URL Django, veuillez faire attention au site Web PHP chinois !


Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal