mirror of
https://gitlab.com/MoonTestUse1/AdministrationItDepartmens.git
synced 2025-08-14 00:25:46 +02:00
миграции2
This commit is contained in:
@@ -1,11 +1,8 @@
|
|||||||
"""Base class for SQLAlchemy models"""
|
"""Import all models for Alembic autogenerate support"""
|
||||||
from sqlalchemy.orm import declarative_base
|
|
||||||
from app.db.base_class import Base
|
from app.db.base_class import Base
|
||||||
from app.models.employee import Employee
|
from app.models.employee import Employee
|
||||||
from app.models.request import Request
|
from app.models.request import Request
|
||||||
from app.models.token import Token
|
from app.models.token import Token
|
||||||
|
|
||||||
Base = declarative_base()
|
|
||||||
|
|
||||||
# Импортируем все модели, чтобы Alembic мог их обнаружить
|
# Импортируем все модели, чтобы Alembic мог их обнаружить
|
||||||
__all__ = ["Base", "Employee", "Request", "Token"]
|
__all__ = ["Base", "Employee", "Request", "Token"]
|
||||||
4
backend/app/db/base_class.py
Normal file
4
backend/app/db/base_class.py
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
"""Base class for SQLAlchemy models"""
|
||||||
|
from sqlalchemy.orm import declarative_base
|
||||||
|
|
||||||
|
Base = declarative_base()
|
||||||
@@ -1,21 +1,19 @@
|
|||||||
"""Employee model"""
|
"""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 sqlalchemy.orm import relationship
|
||||||
from ..db.base import Base
|
from app.db.base_class import Base
|
||||||
|
|
||||||
class Employee(Base):
|
class Employee(Base):
|
||||||
__tablename__ = "employees"
|
__tablename__ = "employees"
|
||||||
|
|
||||||
id = Column(Integer, primary_key=True, index=True)
|
id = Column(Integer, primary_key=True, index=True)
|
||||||
first_name = Column(String, index=True)
|
first_name = Column(String, nullable=False)
|
||||||
last_name = Column(String, index=True)
|
last_name = Column(String, nullable=False)
|
||||||
department = Column(String)
|
department = Column(String, nullable=False)
|
||||||
office = Column(String)
|
office = Column(String, nullable=False)
|
||||||
hashed_password = Column(String)
|
hashed_password = Column(String, nullable=False)
|
||||||
|
created_at = Column(DateTime(timezone=True), server_default=func.now())
|
||||||
|
|
||||||
# Определяем отношение к Request
|
# Определяем отношение к Request
|
||||||
requests = relationship(
|
requests = relationship("Request", back_populates="employee")
|
||||||
"Request",
|
|
||||||
back_populates="employee",
|
|
||||||
cascade="all, delete-orphan"
|
|
||||||
)
|
|
||||||
@@ -3,7 +3,7 @@ from enum import Enum
|
|||||||
from sqlalchemy import Column, Integer, String, ForeignKey, DateTime
|
from sqlalchemy import Column, Integer, String, ForeignKey, DateTime
|
||||||
from sqlalchemy.sql import func
|
from sqlalchemy.sql import func
|
||||||
from sqlalchemy.orm import relationship
|
from sqlalchemy.orm import relationship
|
||||||
from ..db.base import Base
|
from app.db.base_class import Base
|
||||||
|
|
||||||
class RequestStatus(str, Enum):
|
class RequestStatus(str, Enum):
|
||||||
NEW = "new"
|
NEW = "new"
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
"""Token model"""
|
"""Token model"""
|
||||||
from sqlalchemy import Column, Integer, String, DateTime
|
from sqlalchemy import Column, Integer, String, DateTime
|
||||||
from sqlalchemy.sql import func
|
from sqlalchemy.sql import func
|
||||||
from ..db.base import Base
|
from app.db.base_class import Base
|
||||||
|
|
||||||
class Token(Base):
|
class Token(Base):
|
||||||
__tablename__ = "tokens"
|
__tablename__ = "tokens"
|
||||||
|
|||||||
BIN
backend/test.db
BIN
backend/test.db
Binary file not shown.
Reference in New Issue
Block a user