From 4ce0ed63c071283a1e7ca0b08be2b0c0c6902669 Mon Sep 17 00:00:00 2001 From: Tiago vasconcelos Date: Fri, 13 Aug 2021 09:32:34 +0100 Subject: [PATCH] fix livestream for postgres compatibility fix producers create returning id --- lnbits/extensions/livestream/crud.py | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/lnbits/extensions/livestream/crud.py b/lnbits/extensions/livestream/crud.py index ef596b27..47854dbd 100644 --- a/lnbits/extensions/livestream/crud.py +++ b/lnbits/extensions/livestream/crud.py @@ -160,14 +160,21 @@ async def add_producer(livestream: int, name: str) -> int: user = await create_account() wallet = await create_wallet(user_id=user.id, wallet_name="livestream: " + name) - result = await db.execute( - """ + returning = "" if db.type == SQLITE else "RETURNING ID" + method = db.execute if db.type == SQLITE else db.fetchone + + result = await method( + f""" INSERT INTO livestream.producers (livestream, name, "user", wallet) VALUES (?, ?, ?, ?) + {returning} """, (livestream, name, user.id, wallet.id), ) - return result._result_proxy.lastrowid + if db.type == SQLITE: + return result._result_proxy.lastrowid + else: + return result[0] async def get_producer(producer_id: int) -> Optional[Producer]: