2013-06-18 56 views
1

我有一個視圖,它將一個對象分配給一個Event或一個customEvent。它首先嚐試執行Event,如果失敗,應該執行customEvent。我現在的代碼是:Try/Except邏輯有問題。獲取UnboundLocalError

@login_required 
def addEvent(request): 
    event_id = request.POST['event_id'] 
    user = request.POST['profile'] 
    user = Profile.objects.get(id = user) 
    try: 
     event = Event.objects.get(event_id = event_id) 
     user.eventList.add(event) 
    except event.DoesNotExist: 
     event = customEvent.objects.get(event_id = event_id) 
     user.customEventList.add(event) 

return HttpResponse(status = 200) 

但是,我被告知在「except」行中賦值之前引用了局部變量「event」。那麼,這不就是DoesNotExist的意義嗎?它不能被分配?任何人都知道我會如何解決這個問題?

+0

這是它到底是在你的代碼的方式?我的意思是'user.customEventList.add(event)'的縮進? – karthikr

+0

是的,我只是複製並粘貼它 – Xonal

回答

3

我覺得問題就在這裏except event.DoesNotExist

應該except Event.DoesNotExist

因爲型號名稱是Eventevent

+0

哦,哇。你是對的。這是我最後的一個愚蠢的錯誤。萬分感謝。 – Xonal