Add a function to clarify SQL_COLUMNS creation.
This commit is contained in:
		
							parent
							
								
									71325f4fb5
								
							
						
					
					
						commit
						d0208154e4
					
				
					 1 changed files with 9 additions and 6 deletions
				
			
		|  | @ -204,6 +204,14 @@ def _extract_columns_from_table(create_table_statement): | ||||||
|     column_names = [c for c in column_names if c.lower() != 'foreign'] |     column_names = [c for c in column_names if c.lower() != 'foreign'] | ||||||
|     return column_names |     return column_names | ||||||
| 
 | 
 | ||||||
|  | def _extract_table_column_map(script): | ||||||
|  |     columns = {} | ||||||
|  |     table_statements = _extract_table_statements(script) | ||||||
|  |     for table_statement in table_statements: | ||||||
|  |         table_name = _extract_table_name(table_statement) | ||||||
|  |         columns[table_name] = _extract_columns_from_table(table_statement) | ||||||
|  |     return columns | ||||||
|  | 
 | ||||||
| def _reverse_index(columns): | def _reverse_index(columns): | ||||||
|     ''' |     ''' | ||||||
|     Given an iterable, return a dictionary where the key is the item and the |     Given an iterable, return a dictionary where the key is the item and the | ||||||
|  | @ -213,12 +221,7 @@ def _reverse_index(columns): | ||||||
|     ''' |     ''' | ||||||
|     return {column: index for (index, column) in enumerate(columns)} |     return {column: index for (index, column) in enumerate(columns)} | ||||||
| 
 | 
 | ||||||
| SQL_COLUMNS = {} | SQL_COLUMNS = _extract_table_column_map(DB_INIT) | ||||||
| for table_statement in _extract_table_statements(DB_INIT): |  | ||||||
|     table_name = _extract_table_name(table_statement) |  | ||||||
|     columns = _extract_columns_from_table(table_statement) |  | ||||||
|     SQL_COLUMNS[table_name] = columns |  | ||||||
| 
 |  | ||||||
| SQL_INDEX = {table: _reverse_index(columns) for (table, columns) in SQL_COLUMNS.items()} | SQL_INDEX = {table: _reverse_index(columns) for (table, columns) in SQL_COLUMNS.items()} | ||||||
| 
 | 
 | ||||||
| ALLOWED_ORDERBY_COLUMNS = [ | ALLOWED_ORDERBY_COLUMNS = [ | ||||||
|  |  | ||||||
		Loading…
	
		Reference in a new issue