def export_buildings(export_id, export_name, export_type, building_ids, export_model='seed.BuildingSnapshot', selected_fields=None): model = apps.get_model(*export_model.split(".")) selected_buildings = model.objects.filter(pk__in=building_ids) def _row_cb(i): data = get_cache("export_buildings__%s" % export_id) data['buildings_processed'] = i if data['total_buildings'] == 0 or not data['total_buildings']: data['progress'] = 100 else: data['progress'] = (i * 100) / data['total_buildings'] set_cache("export_buildings__%s" % export_id, data['status'], data) exporter = Exporter(export_id, export_name, export_type) if not exporter.valid_export_type(): _row_cb(-1) # this means there was an error return exporter.export(selected_buildings, selected_fields, _row_cb) # file return value is not used _row_cb(selected_buildings.count()) # means we're done!
def export_buildings(export_id, export_name, export_type, building_ids, export_model='seed.BuildingSnapshot', selected_fields=None): model = get_model(*export_model.split(".")) selected_buildings = model.objects.filter(pk__in=building_ids) def _row_cb(i): set_cache_raw("export_buildings__%s" % export_id, i) exporter = Exporter(export_id, export_name, export_type) if not exporter.valid_export_type(): _row_cb(-1) # this means there was an error return file = exporter.export(selected_buildings, selected_fields, _row_cb) # file return value is not used _row_cb(selected_buildings.count()) # means we're done!
def export_buildings(export_id, export_name, export_type, building_ids, export_model='seed.BuildingSnapshot', selected_fields=None): model = get_model(*export_model.split(".")) selected_buildings = model.objects.filter(pk__in=building_ids) def _row_cb(i): cache.set("export_buildings__%s" % export_id, i) exporter = Exporter(export_id, export_name, export_type) if not exporter.valid_export_type(): _row_cb(-1) # this means there was an error return file = exporter.export(selected_buildings, selected_fields, _row_cb) # file return value is not used _row_cb(selected_buildings.count()) # means we're done!