2013-04-10 4 views
4

parfois sur mon site quand je travaille sur ma version locale, je reçois cette erreur dans ma console:erreur Django: [Errno 32] Broken pipe

error: [Errno 32] Broken pipe 

Est-ce que quelqu'un a une idée de l'endroit où il vient de et comment empêcher cela parce qu'il ralentit beaucoup le site.

+3

Utilisez-vous le serveur dev? Si oui, votre question est probablement déjà répondu à: http://stackoverflow.com/questions/7912672/django-broken-pipe-in-debug-mode – niconoe

+3

Cela signifie généralement que le navigateur a interrompu la connexion alors que le serveur essayait toujours de générer la page. Il est prudent de les ignorer (ils ne se produisent que sur le serveur de développement). –

+0

ok merci beaucoup :-) –

Répondre

4

Je l'ai eu lorsque la connexion à la base de données était suspendue entre le serveur de développement et la base de données (avec Amazon RDS).

2

Cela peut être dû au fait que vous utilisez deux méthodes pour insérer des données dans la base de données, ce qui ralentit le site.

def add_subscriber(request, email=None): 
if request.method == 'POST': 
    email = request.POST['email_field'] 
    e = Subscriber.objects.create(email=email).save() <==== 
    return HttpResponseRedirect('/') 
else: 
    return HttpResponseRedirect('/') 

par ex. erreur de fonction ci-dessus est l'endroit où la flèche pointe la bonne façon de mettre en œuvre ci-dessus est

def add_subscriber(request, email=None): 
if request.method == 'POST': 
    email = request.POST['email_field'] 
    e = Subscriber.objects.create(email=email) 
    return HttpResponseRedirect('/') 
else: 
    return HttpResponseRedirect('/') 
Questions connexes