Puoi recuperare l'URL nel tuo modello in questo modo:
<p>URL of this page: {{ request.get_full_path }}</p>
o da
{{ request.path }}
se non hai bisogno di parametri extra.
Alcune precisazioni e correzioni dovrebbero essere apportate alle risposte dell'ipete e di Igancio , riassumerò qui l'intera idea, per riferimento futuro.
Se hai bisogno della request
variabile nel modello, devi aggiungere 'django.core.context_processors.request' alle TEMPLATE_CONTEXT_PROCESSORS
impostazioni, non è di default (Django 1.4).
Inoltre, non dimenticare gli altri processori di contesto utilizzati dalle tue applicazioni. Quindi, per aggiungere la richiesta agli altri processori predefiniti, è possibile aggiungerlo nelle impostazioni, per evitare di codificare a fondo l'elenco di processori predefinito (che potrebbe benissimo cambiare nelle versioni successive):
from django.conf.global_settings import TEMPLATE_CONTEXT_PROCESSORS as TCP
TEMPLATE_CONTEXT_PROCESSORS = TCP + (
'django.core.context_processors.request',
)
Quindi, a condizione di inviare i request
contenuti nella risposta , ad esempio come segue:
from django.shortcuts import render_to_response
from django.template import RequestContext
def index(request):
return render_to_response(
'user/profile.html',
{ 'title': 'User profile' },
context_instance=RequestContext(request)
)