J'ai la vue simple suivante. Pourquoi cela entraîne-t-il cette erreur?
The view auth_lifecycle.views.user_profile didn't return an HttpResponse object. It returned None instead.
"""Renders web pages for the user-authentication-lifecycle project."""
from Django.shortcuts import render
from Django.template import RequestContext
from Django.contrib.auth import authenticate, login
def user_profile(request):
"""Displays information unique to the logged-in user."""
user = authenticate(username='superuserusername', password='sueruserpassword')
login(request, user)
render(request, 'auth_lifecycle/user_profile.html',
context_instance=RequestContext(request))
Parce que la vue doit retournerrender
, pas seulement l'appeler. Changer la dernière ligne en
return render(request, 'auth_lifecycle/user_profile.html',
context_instance=RequestContext(request))
if qs.count()==1:
print('cart id exists')
if ....
else:
return render(request,"carts/home.html",{})
Ce type de code vous renverra également la même erreur en raison d'intentions, car l'instruction de retour devrait être pour sinon pas pour l'instruction if.
le code ci-dessus peut être changé en
if qs.count()==1:
print('cart id exists')
if ....
else:
return render(request,"carts/home.html",{})
Cela peut résoudre de tels problèmes
J'ai eu la même erreur en utilisant un UpdateView
J'ai eu ceci:
if form.is_valid() and form2.is_valid():
form.save()
form2.save()
return HttpResponseRedirect(self.get_success_url())
et j'ai résolu juste de faire:
if form.is_valid() and form2.is_valid():
form.save()
form2.save()
return HttpResponseRedirect(reverse_lazy('adopcion:solicitud_listar'))