2009-05-18 6 views
1

J'ai urlpatterns comme ceci:Passer des variables à un modèle de vue générique Django à l'aide inverse()

urlpatterns = patterns('', 
... 
    (r'^(?P<object_id>\d+)/$', 'django.views.generic.list_detail.object_detail', info_dict, 'poll_detail'), 
... 

Mon modèle de page HTML contient ceci:

{% if error_message %}<p><strong>{{ error_message }}</strong></p>{% endif %} 

Mon code de vue contient:

return HttpResponseRedirect(reverse('poll_detail',args=(p.id,))) 

Ma question est, où dans l'appel de reverse() dois-je placer ma valeur de variable 'error_message'?

Excuses si c'est une question stupide mais j'ai essayé de rechercher la documentation.

Répondre

1

reverse() convertit un nom de vue en URL. Il n'appelle pas la vue. En outre, il ne peut que définir des arguments dans l'URL; il ne peut pas définir de balises de gabarit. Ce que vous pouvez faire est error_message un argument à la vue poll_detail. De cette façon, vous pouvez transmettre sa valeur à la vue en utilisant reverse().

Questions connexes