ошибка сохранения в django - PullRequest
       7

ошибка сохранения в django

0 голосов
/ 22 августа 2011
for *** :
   try:
       xx = A(
          a=x,
          b=y
       )
       xx.save()
   except:
     pass

вот мой вопрос: однажды "xx" сохранила ошибку, другие не сохранят успех.Кто-нибудь знает почему?спасибо!

вот сообщение об ошибке

Exception
[2011-08-22 14:02:23,879: WARNING/PoolWorker-1] RuntimeError
[2011-08-22 14:02:23,879: WARNING/PoolWorker-1] :
[2011-08-22 14:02:23,879: WARNING/PoolWorker-1] 'generator ignored GeneratorExit'
[2011-08-22 14:02:23,879: WARNING/PoolWorker-1] in
[2011-08-22 14:02:23,880: WARNING/PoolWorker-1] <generator object msg_iter_page at 0x2ec28c0>
[2011-08-22 14:02:23,880: WARNING/PoolWorker-1] ignored

Ответы [ 2 ]

0 голосов
/ 28 апреля 2014

Вы не должны ловить GeneratorExit. Если вы хотите отлавливать все исключения, унаследованные от Exception, а не от BaseException, вам следует изменить код на:

for *** :
   try:
       xx = A(
          a=x,
          b=y
       )
       xx.save()
   except Exception:
     pass
0 голосов
/ 22 августа 2011

Вы ловите каждое исключение этим утверждением:

except:
   pass

GeneratorExit - просто исключение. Это не должно быть поймано. Пожалуйста, ловите только те исключения, которые вы ожидаете.

...