#31384: Check if objs are clean before bulk_create, bulk_update
-------------------------------------+-------------------------------------
               Reporter:  GardenLee  |          Owner:  nobody
                   Type:  New        |         Status:  new
  feature                            |
              Component:  Database   |        Version:  3.0
  layer (models, ORM)                |
               Severity:  Normal     |       Keywords:
           Triage Stage:             |      Has patch:  0
  Unreviewed                         |
    Needs documentation:  0          |    Needs tests:  0
Patch needs improvement:  0          |  Easy pickings:  0
                  UI/UX:  0          |
-------------------------------------+-------------------------------------
 We have to check validation of {{{objects set}}} that you want to insert
 when trying bulk_create

 I suggest Users can do any tasks (ex. model fields validation) through the
 parameters like {{{clean_check=True}}} when they use bulk_create and
 bulk_update method

 I suggest that through the parameters bulk_create, bulk_update method, and
 clean_check, when the user wants, the clean function on the object set can
 be executed so that the user can perform the desired operation
 By implementing this way, users can insert objects only passed by
 {{{clean()}}} method that return boolean type
 {{{
     def bulk_create(self, objs, clean_check=None, batch_size=None,
 ignore_conflicts=False):
         ~~~
         if clean_check:
             objs = [obj for obj in objs if obj.clean()]
         ~~~
 }}}

 By implementing this way, validation errors in clean can prevent the
 insertion of object sets containing invalid objects.
 {{{
     def bulk_create(self, objs, clean_check=None, batch_size=None,
 ignore_conflicts=False):
         ~~~
         for obj in objs:
             obj.clean()
         ~~~
 }}}

-- 
Ticket URL: <https://code.djangoproject.com/ticket/31384>
Django <https://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 unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/049.4c7da9311b4783b01cc836e3a7b0b1e8%40djangoproject.com.

Reply via email to