1
0
mirror of https://gitlab.com/MoonTestUse1/AdministrationItDepartmens.git synced 2025-08-14 00:25:46 +02:00

миграции2

This commit is contained in:
MoonTestUse1
2025-01-04 03:52:52 +06:00
parent 6dceccc2a9
commit d7ab6982a0
6 changed files with 17 additions and 18 deletions

View File

@@ -1,11 +1,8 @@
"""Base class for SQLAlchemy models"""
from sqlalchemy.orm import declarative_base
"""Import all models for Alembic autogenerate support"""
from app.db.base_class import Base
from app.models.employee import Employee
from app.models.request import Request
from app.models.token import Token
Base = declarative_base()
# Импортируем все модели, чтобы Alembic мог их обнаружить
__all__ = ["Base", "Employee", "Request", "Token"]

View File

@@ -0,0 +1,4 @@
"""Base class for SQLAlchemy models"""
from sqlalchemy.orm import declarative_base
Base = declarative_base()

View File

@@ -1,21 +1,19 @@
"""Employee model"""
from sqlalchemy import Column, Integer, String
from sqlalchemy import Column, Integer, String, DateTime
from sqlalchemy.sql import func
from sqlalchemy.orm import relationship
from ..db.base import Base
from app.db.base_class import Base
class Employee(Base):
__tablename__ = "employees"
id = Column(Integer, primary_key=True, index=True)
first_name = Column(String, index=True)
last_name = Column(String, index=True)
department = Column(String)
office = Column(String)
hashed_password = Column(String)
first_name = Column(String, nullable=False)
last_name = Column(String, nullable=False)
department = Column(String, nullable=False)
office = Column(String, nullable=False)
hashed_password = Column(String, nullable=False)
created_at = Column(DateTime(timezone=True), server_default=func.now())
# Определяем отношение к Request
requests = relationship(
"Request",
back_populates="employee",
cascade="all, delete-orphan"
)
requests = relationship("Request", back_populates="employee")

View File

@@ -3,7 +3,7 @@ from enum import Enum
from sqlalchemy import Column, Integer, String, ForeignKey, DateTime
from sqlalchemy.sql import func
from sqlalchemy.orm import relationship
from ..db.base import Base
from app.db.base_class import Base
class RequestStatus(str, Enum):
NEW = "new"

View File

@@ -1,7 +1,7 @@
"""Token model"""
from sqlalchemy import Column, Integer, String, DateTime
from sqlalchemy.sql import func
from ..db.base import Base
from app.db.base_class import Base
class Token(Base):
__tablename__ = "tokens"

Binary file not shown.