J'essaye d'implémenter des vues d'édition génériques comme montré here:DJANGO Generic Views: Comment utiliser reverse() dans la méthode get_absolute_url?
J'ai commencé avec le CreateView qui rend et soumet des données correctement. Toutefois, j'obtiens une erreur lorsque j'essaie d'utiliser reverse() pour revenir à la page de vue détaillée du nouvel objet.
Voici mon message d'erreur:
NoReverseMatch à/travail/clients/créer/ inverse pour 'ClientDetailView' avec des arguments '(' 14' ,) » et arguments mot-clé '{}' not found . 0 modèle (s) a essayé: []
Voici comment je définissais get_absolute_url() dans mon modèle:
def get_absolute_url(self):
return reverse('ClientDetailView', kwargs={'pk': self.pk})
Mon point de vue est appelé ClientDetailView. Je ne suis pas sûr de savoir quelle autre information serait utile.
Voici la classe ClientDetailView:
class ClientDetailView(generic.DetailView):
model = Client
template_name = 'work/client_detail.html'`
et voici url()
de urls.py:
url(r'^clients/(?P<pk>[0-9]+)/$', views.ClientDetailView.as_view(), name='clients_detail'),`
Quelqu'un peut-il expliquer ce que je fais mal?
Sans votre fichier urls.py (s) c'est difficile à dire. Aussi, il se pourrait que la correction de 'reverse ('ClientDetailView' ...' '' reverse ('clients_detail', 'aurait été suffisant.) – tobltobs
@tobltobs J'ai ajouté mon fichier urls.py au commentaire principal –
vous incluez ce fichier ailleurs, par exemple dans une application de base? Avez-vous testé avec 'reverse ('clients_detail', ..'? – tobltobs