From 7a5b9533cc8e43f86603df231e1a4fdbbfdf26f5 Mon Sep 17 00:00:00 2001 From: lwark Date: Mon, 29 Jul 2024 10:39:46 -0500 Subject: [PATCH] Various bug fixes. --- README.md | 1 + requirements.txt | Bin 5812 -> 5812 bytes src/submissions/tools/__init__.py | 17 +++++++++++------ 3 files changed, 12 insertions(+), 6 deletions(-) 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 946da5f11922da25bae965cf62b2a2d79a91ed78..5426079caa60900d561b7ce8a357375ae0036b94 100644 GIT binary patch delta 28 gcmdm@yG3`yBW8X(23rOL20aENFln&)BlBS)0CUv`d;kCd delta 28 hcmdm@yG3`yBW8YE23rOL20aEN215|J`6KgTApmpN2Yvtm 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()