diff options
Diffstat (limited to 'django/db/models/query.py')
| -rw-r--r-- | django/db/models/query.py | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/django/db/models/query.py b/django/db/models/query.py index 5ac2407ea3..395ba6e404 100644 --- a/django/db/models/query.py +++ b/django/db/models/query.py @@ -1837,12 +1837,17 @@ class QuerySet(AltersData): inserted_rows = [] bulk_return = connection.features.can_return_rows_from_bulk_insert for item in [objs[i : i + batch_size] for i in range(0, len(objs), batch_size)]: - if bulk_return and on_conflict is None: + if bulk_return and ( + on_conflict is None or on_conflict == OnConflict.UPDATE + ): inserted_rows.extend( self._insert( item, fields=fields, using=self.db, + on_conflict=on_conflict, + update_fields=update_fields, + unique_fields=unique_fields, returning_fields=self.model._meta.db_returning_fields, ) ) |
