Ik doe momenteel dezelfde oefening. De aanpak die ik heb gevolgd, is om een lijst met nieuwe objecten uit het DataFrame te maken en deze vervolgens in bulk te maken:
bulk_create(objs, batch_size=Geen)
Deze methode voegt de verstrekte lijst met objecten op een efficiënte manier in de database in (in het algemeen slechts 1 zoekopdracht , ongeacht hoeveel objecten er zijn)
Een voorbeeld kan er als volgt uitzien:
# Not able to iterate directly over the DataFrame
df_records = df.to_dict('records')
model_instances = [MyModel(
field_1=record['field_1'],
field_2=record['field_2'],
) for record in df_records]
MyModel.objects.bulk_create(model_instances)