More comments in code

This commit is contained in:
DarkCat09 2023-02-27 19:05:04 +04:00
parent 3698d46649
commit 1d9fa011a3
6 changed files with 32 additions and 2 deletions

View file

@ -6,6 +6,7 @@ from . import models
from . import schemas
# SELECT * from users LIMIT 1
def get_user(
db: Session,
user_id: int) -> Optional[models.User]:
@ -16,6 +17,7 @@ def get_user(
.first()
# SELECT * from users
def get_users(
db: Session,
skip: int = 0,
@ -28,6 +30,7 @@ def get_users(
.all()
# INSERT INTO users
def create_user(
db: Session,
user: schemas.UserCreate) -> models.User:

View file

@ -9,6 +9,7 @@ from sqlalchemy.orm import Session, sessionmaker
from sqlalchemy.ext.declarative import declarative_base
# Database configuration
class SqlSettings(BaseSettings):
db_host: str = '${REPO_NAME_SNAKE}_db'
db_port: int = 3306
@ -18,24 +19,31 @@ class SqlSettings(BaseSettings):
sql_settings = SqlSettings()
# DB connection URL
db_url = (
'mysql://{db_user}:{db_password}@'
'{db_host}:{db_port}/{db_database}'
).format(**sql_settings.dict())
# SQLAlchemy engine object
engine = create_engine(db_url)
# Create DB if not exists
if not database_exists(db_url):
create_database(db_url)
# SQLAlchemy Session object
SessionLocal = sessionmaker(
autoflush=False,
bind=engine,
)
# SQLAlchemy Base object
Base = declarative_base()
# FastAPI dependency
async def get_db() -> AsyncGenerator[Session, None]:
"""FastAPI dependency
returning database Session object.

View file

@ -1,12 +1,16 @@
from pydantic import BaseModel
# Pydantic class for
# INSERT queries on a User model
class UserCreate(BaseModel):
email: str
name: str
age: int
# Pydantic class for
# SELECT responses with User model(-s)
class User(UserCreate):
id: int