Tutoriel 3 a démarré. À partir de ce moment, vous apprendrez à créer une page publique.
La description suivante est obligatoire, mais elle est créée automatiquement au démarrage du projet. setting.py ######
ROOT_URLCONF = 'mysite.urls'
La même chose s'applique à URLConf dans urls.py. Tout d'abord, ajoutez un motif ici.
urls.py ######
from django.conf.urls import patterns, include, url #ajouter à
from django.contrib import admin
admin.autodiscover()
urlpatterns = patterns('',
# url(r "modèle d'URL",«Fonction de vue correspondante»)Comment écrire
url(r'^polls/$', 'polls.views.index'), #ajouter à
url(r'^polls/(?P<poll_id>\d+)/$', 'polls.views.detail'), #ajouter à
url(r'^polls/(?P<poll_id>\d+)/results/$', 'polls.views.results'), #ajouter à
url(r'^polls/(?P<poll_id>\d+)/vote/$', 'polls.views.vote'), #ajouter à
url(r'^admin/', include(admin.site.urls))
)
Basique: http://www.mnet.ne.jp/~nakama/ Python:http://docs.python.jp/2.7/library/re.html#module-re
Il semble que ^ signifie le point de départ et $ signifie le point final, donc
Quant à ‘(? P <poll_id> \ d +)’, si vous essayez de le démonter de ce que vous savez,
Ceci est utilisé lors de l'évaluation de plusieurs caractères à la fois.
Il semble que les chaînes de caractères correspondantes suivantes soient affectées à poll_id.
Il semble que cela puisse aussi s'écrire «[0-9]».
En d’autres termes, s’agissant de «\ d +» collectivement, un ou plusieurs nombres demi-largeur sont applicables.
Pour le moment, tous les modèles sont modifiés de «^» à «$», ainsi l'expression spécifiée à l'intérieur sera exclue.
views.py ######
from django.http import HttpResponse
def index(request): # index.rôle de type html
return HttpResponse("Hello, world. You're at the poll index.")
def detail(request, poll_id): # url:/polls/1/Afficher avec
return HttpResponse("You're looking at poll %s." % poll_id)
def results(request, poll_id): # url:/polls/1/results/Afficher avec
return HttpResponse("You're looking at the results of poll %s." % poll_id)
def vote(request, poll_id): # url:/polls/1/vote/Afficher avec
return HttpResponse("You're voting on poll %s." % poll_id)
Pour les fonctions après détail, poll_id est inclus dans le premier argument. Dans l'url précédente (r'URL pattern ',' view function '), si l'URL correspond à l'expression régulière, la valeur affectée à'? P \ <poll_id> 'est passée au deuxième argument de la fonction view. (Puisque c'était '\ d +', ce sera un nombre demi-largeur avec un ou plusieurs chiffres. S'il s'agit de 'url: / pols / 1 /', ce sera '1'). ** J'ai changé le nom et cela n'a pas fonctionné, donc je l'ai peut-être acquis en tant que variable. ** **
Lorsque j'ai accédé à chaque URL, elle s'affichait correctement.
Recommended Posts