简体   繁体   English

Django - 在 Mozilla 而不是 Chrome 中损坏

[英]Django - Broken in Mozilla and not Chrome

I have a serious problem.. :我有一个严重的问题..:

[06/Jul/2015 14:48:25] "POST /mf HTTP/1.1" 200 26969
Traceback (most recent call last):
  File "/usr/lib/python2.7/wsgiref/handlers.py", line 86, in run
self.finish_response()
  File "/usr/lib/python2.7/wsgiref/handlers.py", line 128, in finish_response
self.write(data)
  File "/usr/lib/python2.7/wsgiref/handlers.py", line 212, in write
self.send_headers()
  File "/usr/lib/python2.7/wsgiref/handlers.py", line 270, in send_headers
self.send_preamble()
  File "/usr/lib/python2.7/wsgiref/handlers.py", line 194, in send_preamble
'Date: %s\r\n' % format_date_time(time.time())
  File "/usr/lib/python2.7/socket.py", line 324, in write
self.flush()
  File "/usr/lib/python2.7/socket.py", line 303, in flush
self._sock.sendall(view[write_offset:write_offset+buffer_size])
error: [Errno 32] Broken pipe
    [06/Jul/2015 14:48:25] "POST /mf HTTP/1.1" 500 59
----------------------------------------
Exception happened during processing of request from ('127.0.0.1', 34036)
Traceback (most recent call last):
  File "/usr/lib/python2.7/SocketServer.py", line 593, in process_request_thread
self.finish_request(request, client_address)
  File "/usr/lib/python2.7/SocketServer.py", line 334, in finish_request
self.RequestHandlerClass(request, client_address, self)
  File "/usr/local/lib/python2.7/dist-packages/django/core/servers/basehttp.py", line 129, in __init__
super(WSGIRequestHandler, self).__init__(*args, **kwargs)
  File "/usr/lib/python2.7/SocketServer.py", line 651, in __init__
self.finish()
  File "/usr/lib/python2.7/SocketServer.py", line 710, in finish
self.wfile.close()
  File "/usr/lib/python2.7/socket.py", line 279, in close
self.flush()
  File "/usr/lib/python2.7/socket.py", line 303, in flush
self._sock.sendall(view[write_offset:write_offset+buffer_size])
error: [Errno 32] Broken pipe

only when I use location.reload() or location.href in my js method.仅当我在我的 js 方法中使用 location.reload() 或 location.href 时。

In fact, on click on a button, my js method get elements of a form and send this elements to my view ($.POST(...)).实际上,单击按钮时,我的 js 方法获取表单元素并将这些元素发送到我的视图 ($.POST(...))。 My view uses this elements and render to a html page ( return render(request,"web_site/mf.html",locals()) ).我的视图使用此元素并呈现到 html 页面( return render(request,"web_site/mf.html",locals()) )。 But this render doesn't works...但是这个渲染不起作用......

Error only on Mozilla...仅在 Mozilla 上出错...

In my JS method :在我的 JS 方法中:

function envoie_post_competences(){
    var tab = document.getElementsByName("lesPrec");
    $.post("http://localhost:8000/mf",{"lsC[]": tab});
    location.href = location.href;
}

My url :我的网址:

...
url(r'^mf$','mf',name="mf"),
...

And my view :而我的观点:

def mf(request):
    pseudo=request.user.username
    i_user = get_object_or_404(User,username=pseudo)
    eater = Inscrit.objects.get(user=i_user)
    if request.method == "POST":
        requete = request.POST
        ....
    return render(request,"le_site/mf.html",locals())

In search a solution but in don't find...在寻找解决方案但没有找到...

I found solution, I use .done() of $post !我找到了解决方案,我使用 $post 的 .done() ! Thank you.谢谢你。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM