#13012: Model.objects.get_or_create() try/except is slightly yet insideously 
broken
------------------------------------------------------+---------------------
          Reporter:  brantley (deadwis...@gmail.com)  |         Owner:  nobody  
     
            Status:  closed                           |     Milestone:          
     
         Component:  Database layer (models, ORM)     |       Version:  1.1     
     
        Resolution:  invalid                          |      Keywords:  
get_or_create
             Stage:  Unreviewed                       |     Has_patch:  1       
     
        Needs_docs:  0                                |   Needs_tests:  0       
     
Needs_better_patch:  0                                |  
------------------------------------------------------+---------------------
Changes (by kmtracey):

  * status:  new => closed
  * resolution:  => invalid

Comment:

 That's exactly what the get_or_create code wants to do: reflect the
 earlier exception, not the does not exist, to the caller. I doubt raising
 !DoesNotExist from get_or_create would make things any clearer. The
 problem is a subtle bug in the way you are calling it or how you have set
 unique constraints on the table, and you're likely going to be scratching
 your head on receipt of either the integrity error or the does not exist.

-- 
Ticket URL: <http://code.djangoproject.com/ticket/13012#comment:2>
Django <http://code.djangoproject.com/>
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To post to this group, send email to django-upda...@googlegroups.com.
To unsubscribe from this group, send email to 
django-updates+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/django-updates?hl=en.

Reply via email to