Potresti aver incontrato bellezze come ME2/Sites/dirmod.htm?sid=&type=gen&mod=Core+Pages&gid=A6CD4967199A42D9B65B1B. Sarai felice di sapere che Django ci consente pattern URL molto più eleganti di così.
Un pattern URL è la forma generale di un URL, ad esempio: /newsarchive///.
Per passare da un URL a una view, Django utilizza i cosiddetti “URLconfs“. Un URLconf mappa i pattern URL.
Aggiungiamo altre visualizzazioni a polls/views.py. Questi punti di vista sono leggermente diversi, perché prendono un argomento:
def detail(request, question_id):
return HttpResponse("You're looking at question %s." % question_id)
def results(request, question_id):
response = "You're looking at the results of question %s."
return HttpResponse(response % question_id)
def vote(request, question_id):
return HttpResponse("You're voting on question %s." % question_id)
Collega queste nuove visualizzazioni al modulo polls.urls aggiungendo le seguenti chiamate path():
from django.urls import path
from . import views
urlpatterns = [
# ex: /polls/
path('', views.index, name='index'),
# ex: /polls/5/
path('<int:question_id>/', views.detail, name='detail'),
# ex: /polls/5/results/
path('<int:question_id>/results/', views.results, name='results'),
# ex: /polls/5/vote/
path('<int:question_id>/vote/', views.vote, name='vote'),
]