From 9718eaeaf7a7f654c29d88f67fe061312fbecbee Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Herv=C3=A9=20=20MENAGER?= <herve.menager@pasteur.fr> Date: Sun, 3 Mar 2019 22:36:54 +0100 Subject: [PATCH] handle progress bar for dataframes --- django_diu/import_command.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/django_diu/import_command.py b/django_diu/import_command.py index 75932fa..515b81a 100644 --- a/django_diu/import_command.py +++ b/django_diu/import_command.py @@ -74,7 +74,7 @@ class ImportTask(object): pass def _process_rows(self, rows): - for row in rows: + for idx, row in enumerate(rows): try: new_object = None with transaction.atomic(): @@ -93,6 +93,8 @@ class ImportTask(object): if self.progress_bar == False: self.out_stream.write(self.style.SUCCESS( 'Successfully inserted {}'.format(new_object))) + if self.progress_bar: + self.rows.update(idx) def count_source(self): self.source_count = len(self.rows) @@ -101,7 +103,7 @@ class ImportTask(object): self.open_data_source() self.count_source() if self.progress_bar is True: - with click.progressbar(self.rows, + with click.progressbar(length=self.source_count, label='Importing ' + self.description + ' (' + str(self.source_count) + ' rows to process).') as rows_list: self._process_rows(rows_list) else: -- GitLab