安装
pip install django-bulk-update-or-create==0.3.0
1. models.py
from bulk_update_or_create import BulkUpdateOrCreateQuerySet
from django.db import models
class DataCallSurvey(models.Model):
id_ = models.AutoField(primary_key=True, verbose_name='主键', help_text='主键')
agent_id = models.CharField(max_length=50, blank=True, null=True, verbose_name='座席人ID', help_text='座席人ID')
agent_name = models.CharField(max_length=50, blank=True, null=True, verbose_name='座席姓名', help_text='座席姓名')
objects = BulkUpdateOrCreateQuerySet.as_manager()
class Meta:
managed = DB_TABLE_MANAGED
db_table = 'data_call_survey'
verbose_name = '电话评价表'
2. views.py
data = [{...}]
DataCallSurvey.objects.bulk_update_or_create(
[DataCallSurvey(**da) for da in data], # [模型对象]
update_fields=[i for i in columns if i != "id_"], # [更新字段]
match_field="id_", # [唯一键]
batch_size=2000
)