/
nollieundergrob
/
PythonPackageStorage
Обзор
Документация
Войти
/
nollieundergrob
/
PythonPackageStorage
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
backend/src/config/settings.py
40 строк
1 KB
nollieundergrob
GENERAL FIX BACKEND
15 авг 2025, 16:01
15 авг 2025, 16:01
a8b7dd5
Код
Авторство
О чём код?
from typing import List, Optional from pydantic import Field, SecretStr from pathlib import Path from pydantic_settings import BaseSettings from pathlib import Path class Settings(BaseSettings): # Определяем префикс для всех переменных окружения class Config: env_prefix = "APP_" # Разрешаем доступ с любых хостов (если не используется обратный прокси-сервер) allowed_hosts: List[str] = Field(default=["*"], env="ALLOWED_HOSTS") log_level: Optional[str] = Field(default="info", env="LOG_LEVEL") debug: bool = Field(default=False, env="DEBUG") host: str = Field(default="localhost", env="HOST") port: int = Field(default=8000, env="PORT") BASE_PATH:Path = Path(__file__).parent.parent.parent reload: bool = Field(default=True, env="RELOAD") app_name: str = Field(default="FastAPI Application", env="APP_NAME") cors:str = Field(default="*", env="CORS") db_name: str = Field(default="database.db", env="DB_NAME") db_engine: str = Field(default="sqlite3", env="DB_ENGINE") db_session: dict = Field(default_factory=dict, env="DB_SESSION") extra_kwargs: dict = Field(default={}, env="EXTRA_KWARGS") def db_url(self) -> str: return f"sqlite+aiosqlite:///{self.BASE_PATH}/{self.db_name}" def db_echo(self) -> bool: return self.debug # Создаем экземпляр настроек settings = Settings()