def _post_display(self, request): form = ExcelUploaderForm(request.POST, request.FILES) if not form.is_valid(): raise ModuleError( 'Data not properly sent to server. Please set "file" in POST data.' ) try: input_excel = request.FILES['file'] book = open_workbook(file_contents=input_excel.read()) sheet = book.sheet_by_index(0) table = {'headers': [], 'values': []} for row_index in range(sheet.nrows): row_values = [] for col_index in range(sheet.ncols): cell_text = str(sheet.cell(row_index, col_index).value) if row_index == 0: table['headers'].append(cell_text) else: row_values.append(cell_text) if len(row_values) != 0: table['values'].append(row_values) self.table = table self.table_name = str(input_excel) return self.extract_html_from_table() except: return 'Something went wrong. Be sure to upload an Excel file, with correct format.'
def _post_display(self, request): form = ExcelUploaderForm(request.POST, request.FILES) if not form.is_valid(): raise ModuleError('Data not properly sent to server. Please set "file" in POST data.') try: input_excel = request.FILES['file'] book = open_workbook(file_contents=input_excel.read()) sheet = book.sheet_by_index(0) table = { 'headers': [], 'values': [] } for row_index in range(sheet.nrows): row_values = [] for col_index in range(sheet.ncols): cell_text = str(sheet.cell(row_index, col_index).value) if row_index == 0: table['headers'].append(cell_text) else: row_values.append(cell_text) if len(row_values) != 0: table['values'].append(row_values) self.table = table self.table_name = str(input_excel) return self.extract_html_from_table() except: return 'Something went wrong. Be sure to upload an Excel file, with correct format.'
def __init__(self): self.table = None self.table_name = None with open(os.path.join(TEMPLATES_PATH, 'ExcelUploader.html'), 'r') as excel_uploader_file: excel_uploader = excel_uploader_file.read() template = Template(excel_uploader) context = Context({'form': ExcelUploaderForm()}) popup_content = template.render(context) PopupModule.__init__( self, popup_content=popup_content, button_label='Upload Excel File', scripts=[os.path.join(SCRIPTS_PATH, 'exceluploader.js')], styles=[os.path.join(STYLES_PATH, 'exceluploader.css')])