2014-10-08 11 views
15

Ho la seguente semplice vista. Perché si verifica questo errore?La vista non ha restituito un oggetto HttpResponse. Restituito None invece

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)) 

risposta

40

Poiché la vista deve ritornorender, non solo chiamarlo. Modificare l'ultima riga di

return render(request, 'auth_lifecycle/user_profile.html', 
      context_instance=RequestContext(request)) 
2

Ho avuto lo stesso errore utilizzando un UpdateView

ho avuto questo:

if form.is_valid() and form2.is_valid(): 
    form.save() 
    form2.save() 
    return HttpResponseRedirect(self.get_success_url()) 

e ho risolto solo facendo:

if form.is_valid() and form2.is_valid(): 
    form.save() 
    form2.save() 
    return HttpResponseRedirect(reverse_lazy('adopcion:solicitud_listar')) 
Problemi correlati