0
以下代碼是否正確?在執行try/except塊之後,e
應該在每次迭代開始時引用一個新對象。我懷疑有一些干擾舊對象,因爲現在有一個我現在無法再現的錯誤。Django循環中的模型參考分配
from webapp.models import Profile
....
for e in Profile.objects.all():
if not e.profile_link in profile_data:
e.delete()
try:
for key, employee in profile_data.iteritems():
#e still holds old reference
try:
#edit DB object if exists
e = Profile.objects.all().filter(profile_link=key)[0]
except Exception:
#or create a new one
e = Profile(profile_link=key)
#modify e using employee
e.save()
except Exception:
#handle exception
你的意思是將try/except塊縮進到for循環之外? – souldeux
不好有未定義的異常。讓它失敗,瞭解異常發生的情況,並處理這些問題 –
可能沒有錯誤。你應該做一個函數調用'e.save()'而不是'e.save' – machaku