【问题标题】:Django error: [Errno 32] Broken pipe [duplicate]Django 错误:[Errno 32] 管道损坏 [重复]
【发布时间】:2013-04-10 20:20:35
【问题描述】:

当我在本地版本上工作时,有时在我的网站上,我在控制台中收到此错误:

error: [Errno 32] Broken pipe

有没有人知道它的来源以及如何防止这种情况,因为它大大降低了网站速度。

【问题讨论】:

  • 您使用的是开发服务器吗?如果是这样,您的问题可能已经在以下位置得到解答:stackoverflow.com/questions/7912672/…
  • 这通常意味着浏览器在服务器仍在尝试生成页面时中断了连接。忽略这些是安全的(它们只发生在开发服务器上)。

标签: python django broken-pipe


【解决方案1】:

当开发服务器和数据库(使用 Amazon RDS)之间的数据库连接挂起时,我得到了这个。

【讨论】:

    【解决方案2】:

    这可能是因为您使用两种方法将数据插入数据库,这会导致网站速度变慢。

    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('/')
    

    例如。在上面的函数中,错误是箭头指向的地方 上面的正确实现方式是

    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('/')
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-04-28
      • 2013-04-16
      • 2021-01-04
      • 2017-04-22
      • 1970-01-01
      • 2014-09-28
      • 2021-10-11
      • 1970-01-01
      相关资源
      最近更新 更多