2010-02-07 6 views
1

Je reçois cette erreur dans l'un de mes modèles et je n'arrive pas à comprendre ce qui ne va pas.Erreur NoReverseMatch dans l'application django

`NoReverseMatch: Reverse for 'getimagefile' 
with arguments '(12L, 'afN9LRzESh4I9CGe6tFVoA==\n')' and 
keyword arguments '{}' not found. 

Mon urls.py contient:

Mon views.py contient:

def getimagecontent(request,extractedcontent_id,encpw): 
........ 

Et enfin mon modèle qui me donne l'erreur contient la ligne suivante:

<li class="active"><img src="{% url getimagefile img,encpw %}" title=""/></li> 

Répondre

1

Votre variable encpw se termine par un caractère de nouvelle ligne, par défaut le. le caractère d'expression régulière ne les capture pas. Essayez de modifier votre regex afin que le drapeau DOTALL soit activé, ce qui correspondra aux caractères de nouvelle ligne.

url(r'(?s)^getimage/(?P<extractedcontent_id>\d+)/(?P<encpw>.*)/$','getimagecontent',name='getimagefile'), 

Notez que le (?s) au début cela tournera le drapeau dotall sur.

+0

Cela a fonctionné merci! – kartikq

1

Vous ne montrez pas où encpw vient de, mais il semble avoir un caractère de nouvelle ligne (\n) à la fin, ce qui ne correspondra pas à l'URL regex.