diff --git a/README.md b/README.md index 974ea78..6fb457c 100644 --- a/README.md +++ b/README.md @@ -123,6 +123,7 @@ This is meant to import .xslx files created from the Design & Analysis Software 6. Install dependencies: ```pip install -r requirements.txt``` ## Database: +*If using a pre-existing database, skip this.* 1. Copy 'alembic_default.ini' to 'alembic.ini' in the same folder. 2. Open 'alembic.ini' and edit 'sqlalchemy.url' to the desired path of the database. diff --git a/requirements.txt b/requirements.txt index 946da5f..5426079 100644 Binary files a/requirements.txt and b/requirements.txt differ diff --git a/src/submissions/tools/__init__.py b/src/submissions/tools/__init__.py index b33ea6e..ccec905 100644 --- a/src/submissions/tools/__init__.py +++ b/src/submissions/tools/__init__.py @@ -443,19 +443,23 @@ class Settings(BaseSettings, extra="allow"): if 'pytest' in sys.modules: output = dict(power_users=['lwark', 'styson', 'ruwang']) else: + print(f"Hello from database settings getter.") + # session = Session(create_engine(f"sqlite:///{db_path}")) - logger.debug(self.__dict__) + # print(self.__dict__) session = self.database_session metadata = MetaData() + # print(self.database_session.get_bind()) try: - tables = metadata.reflect(bind=session.get_bind()).tables.keys() - except AttributeError: + metadata.reflect(bind=session.get_bind()) + except AttributeError as e: + print(f"Error getting tables: {e}") return - if "_configitem" not in tables: + if "_configitem" not in metadata.tables.keys(): + print(f"Couldn't find _configitems in {metadata.tables.keys()}.") return config_items = session.execute(text("SELECT * FROM _configitem")).all() - session.close() - # print(config_items) + # print(f"Config: {pprint.pprint(config_items)}") output = {} for item in config_items: try: @@ -467,6 +471,7 @@ class Settings(BaseSettings, extra="allow"): if not hasattr(self, k): self.__setattr__(k, v) + @classmethod def get_alembic_db_path(cls, alembic_path, mode=Literal['path', 'schema', 'user', 'pass']) -> Path | str: c = ConfigParser()