J'ai une vue dans laquelle je veux faire des choses, puis rediriger vers une autre vue avec un message de réussite. La signature de la méthode vers laquelle je veux rediriger est
quizView(request, quizNumber, errorMessage=None, successMessage=None):
et ma tentative de redirection vers cette vue ressemble à ceci:
return redirect(quizView, quizNumber=quizNumber, errorMessage=None, successMessage="Success!")
J'ai essayé la plupart des combinaisons de paramètres nommés et non nommés et je n'arrive pas à faire ce que je veux. Existe-t-il un moyen de faire fonctionner cela?
De plus, j'ai essayé de renvoyer la deuxième vue avec la première, mais l'URL est toujours là où elle était dans l'ancienne vue au lieu d'apparaître comme si elle avait redirigé.
Merci!
Vous n'avez pas donné de nom à votre URL, vous devez donc utiliser le chemin complet de la fonction d'affichage. De plus, cette URL ne prend pas les paramètres errorMessage
ou successMessage
, donc les mettre dans l'appel reverse
échouera. Voici ce que vous voulez:
return redirect('quizzes.views.quizView', quizNumber=quizNumber)
Pouvez-vous essayer l'exemple 2 donné dans https://docs.djangoproject.com/en/dev/topics/http/shortcuts/#redirect