From 754f55906728ed45fd5d2ae012225a60a0f61ff3 Mon Sep 17 00:00:00 2001 From: Felix Kloss Date: Tue, 14 Jan 2025 12:10:13 +0100 Subject: [PATCH] Use sqlalchemy.select instead of sqlmodel.select It seems to work the same but the sqlmodel version resulted in a mypy false alert in local_auth.py. Further, let's avoid using an additional package if it's not needed. --- .../comprl_web/reflex_local_auth/local_auth.py | 8 +++----- comprl-web-reflex/comprl_web/reflex_local_auth/login.py | 6 +----- .../comprl_web/reflex_local_auth/registration.py | 2 +- 3 files changed, 5 insertions(+), 11 deletions(-) diff --git a/comprl-web-reflex/comprl_web/reflex_local_auth/local_auth.py b/comprl-web-reflex/comprl_web/reflex_local_auth/local_auth.py index 4c991453..24ea7625 100644 --- a/comprl-web-reflex/comprl_web/reflex_local_auth/local_auth.py +++ b/comprl-web-reflex/comprl_web/reflex_local_auth/local_auth.py @@ -9,8 +9,6 @@ import datetime -from sqlmodel import select - import sqlalchemy as sa import reflex as rx @@ -38,7 +36,7 @@ class LocalAuthState(rx.State): @rx.var(cache=True) def authenticated_user(self) -> User | None: - """The currently authenticated user, or a dummy user if not authenticated. + """The currently authenticated user. Returns: User instance corresponding to the currently authenticated user or None if @@ -46,7 +44,7 @@ def authenticated_user(self) -> User | None: """ with get_session() as session: result = session.scalars( - select(User, LocalAuthSession).where( + sa.select(User, LocalAuthSession).where( LocalAuthSession.session_id == self.auth_token, LocalAuthSession.expiration >= datetime.datetime.now(datetime.timezone.utc), @@ -70,7 +68,7 @@ def do_logout(self) -> None: """Destroy LocalAuthSessions associated with the auth_token.""" with get_session() as session: for auth_session in session.scalars( - select(LocalAuthSession).where( + sa.select(LocalAuthSession).where( LocalAuthSession.session_id == self.auth_token ) ).all(): diff --git a/comprl-web-reflex/comprl_web/reflex_local_auth/login.py b/comprl-web-reflex/comprl_web/reflex_local_auth/login.py index ae467e1e..aab567b8 100644 --- a/comprl-web-reflex/comprl_web/reflex_local_auth/login.py +++ b/comprl-web-reflex/comprl_web/reflex_local_auth/login.py @@ -4,7 +4,7 @@ import bcrypt import reflex as rx -from sqlmodel import select +from sqlalchemy import select from comprl.server.data.sql_backend import User @@ -44,10 +44,6 @@ def on_submit(self, form_data) -> rx.event.EventSpec: self.error_message = "" username = form_data["username"] password = form_data["password"] - # with rx.session() as session: - # user = session.exec( - # select(User).where(User.username == username) - # ).one_or_none() with get_session() as session: user = session.scalars( diff --git a/comprl-web-reflex/comprl_web/reflex_local_auth/registration.py b/comprl-web-reflex/comprl_web/reflex_local_auth/registration.py index fc492e3e..222eefe2 100644 --- a/comprl-web-reflex/comprl_web/reflex_local_auth/registration.py +++ b/comprl-web-reflex/comprl_web/reflex_local_auth/registration.py @@ -7,7 +7,7 @@ import reflex as rx -from sqlmodel import select +from sqlalchemy import select from comprl.server.util import IDGenerator from comprl.server.data.sql_backend import User, hash_password