Access tokens 0.1.0
This commit is contained in:
26
src/database/users/crud.py
Normal file
26
src/database/users/crud.py
Normal file
@@ -0,0 +1,26 @@
|
||||
from sqlalchemy import select
|
||||
from src.models.database_models.model import User, engine
|
||||
from src.models.pydantic_models.model import UserOutDB
|
||||
from sqlalchemy.orm import sessionmaker
|
||||
from uuid import UUID
|
||||
class UsersCrudActions:
|
||||
def __init__(self) -> None:
|
||||
self.Session=sessionmaker(bind=engine)
|
||||
|
||||
def get_user_by_email(self, email:str)->UserOutDB|None:
|
||||
with self.Session() as session:
|
||||
with session.begin():
|
||||
query=select(User).where(User.email==email)
|
||||
response=session.scalars(query).one_or_none()
|
||||
if response is None:
|
||||
return None
|
||||
return UserOutDB.model_validate(response)
|
||||
|
||||
def get_user_by_id(self, id:UUID)->UserOutDB|None:
|
||||
with self.Session() as session:
|
||||
with session.begin():
|
||||
query=select(User).where(User.id==id)
|
||||
response=session.scalars(query).one_or_none()
|
||||
if response is None:
|
||||
return None
|
||||
return UserOutDB.model_validate(response)
|
||||
Reference in New Issue
Block a user