40 lines
1.5 KiB
Python
40 lines
1.5 KiB
Python
import os
|
|
|
|
from dotenv import load_dotenv
|
|
from sqlalchemy import create_engine
|
|
from sqlalchemy.orm import sessionmaker
|
|
|
|
from app.infrastructure.database.models import Base
|
|
|
|
load_dotenv()
|
|
|
|
SQLALCHEMY_DATABASE_URL = os.getenv("DATABASE_URL")
|
|
|
|
engine = create_engine(SQLALCHEMY_DATABASE_URL)
|
|
SessionLocal = sessionmaker(autocommit=False, autoflush=False, bind=engine)
|
|
|
|
|
|
def init_db():
|
|
import app.infrastructure.database.models.answer_files
|
|
import app.infrastructure.database.models.answer_options
|
|
import app.infrastructure.database.models.appeals
|
|
import app.infrastructure.database.models.appeals_topics
|
|
import app.infrastructure.database.models.categories
|
|
import app.infrastructure.database.models.course_students
|
|
import app.infrastructure.database.models.courses
|
|
import app.infrastructure.database.models.lectures
|
|
import app.infrastructure.database.models.lessons
|
|
import app.infrastructure.database.models.notification_types
|
|
import app.infrastructure.database.models.notifications
|
|
import app.infrastructure.database.models.roles
|
|
import app.infrastructure.database.models.step_tasks
|
|
import app.infrastructure.database.models.step_types
|
|
import app.infrastructure.database.models.steps
|
|
import app.infrastructure.database.models.task_answers
|
|
import app.infrastructure.database.models.task_files
|
|
import app.infrastructure.database.models.task_types
|
|
import app.infrastructure.database.models.test_answers
|
|
import app.infrastructure.database.models.users
|
|
|
|
Base.metadata.create_all(bind=engine)
|