나는 Django 신호를 사용하고 있지만 한 번만 내 보낸 경우에도 두 번받는 것으로 보입니다. 여기에 내가 (이 장고 Uploadify를 사용하는 간단한 래퍼)와 함께 일하고 있어요 코드 ...Django 신호를 한 번 내보내고 두 번 받았다 - 왜?
# Signal-emitting code... emits whenever a file upload is received
# ----------------------------------------------------------------
upload_recieved = django.dispatch.Signal(providing_args=['data'])
def upload(request, *args, **kwargs):
if request.method == 'POST':
if request.FILES:
print 'sending signal'
upload_recieved.send(sender='uploadify', data=request.FILES['Filedata'])
return HttpResponse('True')
# Signal-receiving code...
# ----------------------------------------------------------------
def upload_received_handler(sender, data, **kwargs):
print 'upload received handler'
print 'connecting signal'
upload_recieved.connect(upload_received_handler)
(난 그냥 눈치 내 신호가 잘못된 철자가)
내가 확신입니다 거기에있는 진술을 알아 차렸다. 콘솔에서이 그것을 보여주는 무슨이다 :
(server starts)
connecting signal
...
sending signal
upload received handler
upload received handler # << == where is this 2nd one coming from?
127.0.0.1 - - [25/Sep/2009 07:28:22] "POST /uploadify/upload/ HTTP/1.1" 200 -
을 나는 믿는다 서버는 요청이 완료 될 때까지 기다렸다가 로그를 남깁니다. 그런 다음 500 개의 상태 코드와 성공적인 요청이 발생하는 서버 오류가 있었는지 여부, 로그 형식에 포함 된 요청의 소요 시간 등을 알 수 있습니다. – dcrosta