def _convert_to_db_names(project_document_data: Dict) -> Dict: converted_args = {} exclude_keys = [ "tags", "prjOwner", ] # No column for tags, prjOwner is a foreign key in db for key, value in project_document_data.items(): if not key in exclude_keys: converted_args[ChangeCase.camel_to_snake(key)] = value return converted_args
def _convert_to_schema_names(project_db_data) -> Dict: converted_args = {} for key, value in project_db_data.items(): if key in ["type", "id"]: continue converted_value = value if isinstance(value, datetime): converted_value = "{}Z".format( value.isoformat(timespec='milliseconds')) converted_args[ChangeCase.snake_to_camel(key)] = converted_value return converted_args
def _convert_to_schema_names(project_database_data: Mapping, user_email: str) -> Dict: converted_args = {} for key, value in project_database_data.items(): if key in DB_EXCLUSIVE_COLUMNS: continue converted_value = value if isinstance(value, datetime): converted_value = format_datetime(value) elif key == "prj_owner": # this entry has to be converted to the owner e-mail address converted_value = user_email converted_args[ChangeCase.snake_to_camel(key)] = converted_value return converted_args
def as_class_name(name): cc = ChangeCase.snake_to_camel(name) cc = cc[0].upper() + cc[1:] return cc
def db_table_name(table_name: str, schema_name: str = None) -> str: table_name = ChangeCase.camel_to_snake(table_name) if schema_name is None: return f'"{table_name}"' else: return f'"{schema_name}"."{table_name}"'
def db_column_name(col_name: str) -> str: return ChangeCase.camel_to_snake(col_name)
def _convert_to_db_names(project_data: Dict) -> Dict: converted_args = {} for key, value in project_data.items(): converted_args[ChangeCase.camel_to_snake(key)] = value return converted_args