Vai al contenuto

Django | pattern URL

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'),
]

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *