Jeg er lige i gang med den samme øvelse i øjeblikket. Den tilgang, jeg har valgt, er at oprette en liste over nye objekter fra DataFrame og derefter masseoprette dem:
bulk_create(objs, batch_size=Ingen)
Denne metode indsætter den leverede liste over objekter i databasen på en effektiv måde (generelt kun 1 forespørgsel , uanset hvor mange objekter der er)
Et eksempel kan se sådan ud:
# 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)