diff --git a/setup.cfg b/setup.cfg index ac8dfe5..2541770 100644 --- a/setup.cfg +++ b/setup.cfg @@ -1,6 +1,6 @@ [metadata] name = based -version = 0.2.0 +version = 0.2.1 description = A simple, fast (maybe), and reliable (I hope) PostgreSQL ORM oriented for dynamic models. author = nuark author_email = me@nuark.xyz diff --git a/src/based/__init__.py b/src/based/__init__.py index d3ec452..3ced358 100644 --- a/src/based/__init__.py +++ b/src/based/__init__.py @@ -1 +1 @@ -__version__ = "0.2.0" +__version__ = "0.2.1" diff --git a/src/based/db.py b/src/based/db.py index 28f189d..9843901 100644 --- a/src/based/db.py +++ b/src/based/db.py @@ -212,7 +212,7 @@ class DBConnector: conn.execute(stmt) def selectFromTable( - self, table_name: str, columns: list[str] + self, table_name: str, columns: list[str], where: list[ColumnCondition] = [] ) -> list[dict[str, Any]]: if len(columns) == 1 and columns[0] == "*": stmt = SQL("SELECT * FROM {}").format(Identifier(table_name)) @@ -221,6 +221,10 @@ class DBConnector: SQL(", ").join(map(lambda c: Identifier(c), columns)), Identifier(table_name), ) + if len(where) > 0: + stmt += SQL(" WHERE {}").format( + SQL(" AND ").join(map(lambda cp: cp.sql(), where)) + ) with self.connection as conn: return conn.execute(stmt).fetchall()