J'ai le modèle suivant:Django bulk_create provoque une erreur d'intégrité d'entrée en double
class GeneratedContent(models.Model):
entity = models.ForeignKey('companies.Entity')
source_url = models.URLField(max_length=255)
title = models.CharField(max_length=255, blank=True, null=True)
desc = models.TextField(blank=True, null=True)
created_at = models.DateTimeField(auto_now_add = True)
updated_at = models.DateTimeField(auto_now = True)
def __str__(self):
return self.entity.name +' Content'
Je suis alors le traitement des urls, puis d'enregistrer un numéro en vrac de ces objets comme celui-ci:
gen_content_list = []
for e in entities:
entity_status = get_tweets(e.twitter_handle())
try:
stat_url = re.search("(?P<url>https?://[^\s]+)", entity_status).group("url")
gen_content = GeneratedContent.objects.create(
entity=e,
desc=entity_status,
source_url=stat_url,
crawled=False,
)
gen_content_list.append(gen_content)
self.stdout.write(self.style.SUCCESS(e.name+' status: '+stat_url.encode('ascii','replace')))
except:
pass
if gen_content_list:
GeneratedContent.objects.bulk_create(gen_content_list)
Je reçois l'erreur suivante:
django.db.utils.IntegrityError: (1062, "Duplicate entry '19' for key 'PRIMARY'")
Qu'est-ce que je fais mal?