Bulk_create всегда вызывает ошибку первичного ключа (sql server)

Использование Django 3.2.6, БД - SQL Server

Я пытаюсь использовать bulk_create для создания набора строк в моей базе данных, но он продолжает выдавать ошибку Primary Key, хотя мой первичный ключ должен генерироваться автоматически. В моем представлении я создаю список объектов Model следующим образом и использую bulk_create

asset_map_list = []
for row in data_list:
    asset = Asset(asset_type=AssetType.objects.get(name=asset_type_name), asset_name=row['asset_name'], display_name=row['display_name'])
    asset_list.append(asset)

Asset.objects.bulk_create(asset_list)

Однако он продолжает выдавать ошибку первичного ключа

django.db.utils.IntegrityError: ('23000', "[23000] [Microsoft][ODBC Driver 17 for SQL Server][SQL Server]Violation of PRIMARY KEY constraint 'PK__mm_asset__xxxxxx'

Мои модели активов и типов активов выглядят следующим образом:

class Asset(models.Model):
    asset_type = models.ForeignKey(AssetType, on_delete=models.CASCADE)
    asset_name = models.CharField(max_length=80)
    display_name = models.CharField(max_length=80)

class AssetType(models.Model):
    id = models.AutoField(primary_key=True)
    name = models.CharField(max_length=80, unique=True)
    description = models.CharField(max_length=80)

Я пытался установить ignore_conflicts=True, но SQL Server не поддерживает это. Я пытался сделать df.to_sql(), но это становится сложным из-за внешнего ключа (как вы можете видеть - пользователь вводит ИМЯ типа актива, но в моей БД активов я храню ID типа актива)

Может ли кто-нибудь помочь мне решить эту проблему с bulk_create или указать мне на лучшую альтернативу?

Спасибо

Вернуться на верх