diff options
Diffstat (limited to 'uploader/publications/models.py')
-rw-r--r-- | uploader/publications/models.py | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/uploader/publications/models.py b/uploader/publications/models.py index 6034c9e..22690f8 100644 --- a/uploader/publications/models.py +++ b/uploader/publications/models.py @@ -80,3 +80,11 @@ def fetch_publications(conn: Connection) -> Iterable[dict]: cursor.execute("SELECT * FROM Publication") for row in cursor.fetchall(): yield dict(row) + + +def fetch_publication_by_id(conn: Connection, publication_id: int) -> dict: + """Fetch a specific publication from the database.""" + with conn.cursor(cursorclass=DictCursor) as cursor: + cursor.execute("SELECT * FROM Publication WHERE Id=%s", + (publication_id,)) + return dict(cursor.fetchone()) |