mirror of
https://github.com/fastapi-practices/fastapi_best_architecture.git
synced 2025-08-26 13:26:04 +08:00

* define the basic architecture * Update script and deployment file locations * Update the route registration * Fix CI download dependencies * Updated ruff to 0.3.3 * Update app subdirectory naming * Update the model import * fix pre-commit pdm lock * Update the service directory naming * Add CRUD method documents * Fix the issue of circular import * Update the README document * Update the SQL statement for create tables * Update docker scripts and documentation * Fix docker scripts * Update the backend README.md * Add the security folder and move the redis client * Update the configuration item * Fix environment configuration reads * Update the default configuration * Updated README description * Updated the user registration API * Fix test cases * Update the celery configuration * Update and fix celery configuration * Updated the celery structure * Update celery tasks and api * Add celery flower * Update the import style * Update contributors
26 lines
771 B
Python
26 lines
771 B
Python
#!/usr/bin/env python3
|
|
# -*- coding: utf-8 -*-
|
|
from sqlalchemy.ext.asyncio import AsyncSession
|
|
|
|
from backend.core.conf import settings
|
|
from backend.database.db_mysql import create_engine_and_session
|
|
|
|
TEST_SQLALCHEMY_DATABASE_URL = (
|
|
f'mysql+asyncmy://{settings.MYSQL_USER}:{settings.MYSQL_PASSWORD}@{settings.MYSQL_HOST}:'
|
|
f'{settings.MYSQL_PORT}/{settings.MYSQL_DATABASE}_test?charset={settings.MYSQL_CHARSET}'
|
|
)
|
|
|
|
_, test_async_db_session = create_engine_and_session(TEST_SQLALCHEMY_DATABASE_URL)
|
|
|
|
|
|
async def override_get_db() -> AsyncSession:
|
|
"""session 生成器"""
|
|
session = test_async_db_session()
|
|
try:
|
|
yield session
|
|
except Exception as se:
|
|
await session.rollback()
|
|
raise se
|
|
finally:
|
|
await session.close()
|