- Restore judges/categories TEXT columns to Championship model (were in DB but missing from model) - Remove phantom columns not in DB: org_id, subtitle, venue, accent_color - Remove broken relationships to unmigrated tables (Organization, Discipline, Style, Fee, Rule, Judge) - Remove broken instagram_service import from lifespan (file doesn't exist) - Add http://localhost:3000 to default CORS origins (web frontend) Model files for unmigrated tables kept on disk for future migration. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
29 lines
901 B
Python
29 lines
901 B
Python
from pydantic_settings import BaseSettings, SettingsConfigDict
|
|
|
|
|
|
class Settings(BaseSettings):
|
|
model_config = SettingsConfigDict(env_file=".env", env_file_encoding="utf-8", extra="ignore")
|
|
|
|
# Default: SQLite for local dev. Set DATABASE_URL=postgresql+asyncpg://... for production.
|
|
DATABASE_URL: str = "sqlite+aiosqlite:///./poledance.db"
|
|
|
|
SECRET_KEY: str = "dev-secret-change-in-production"
|
|
ALGORITHM: str = "HS256"
|
|
ACCESS_TOKEN_EXPIRE_MINUTES: int = 15
|
|
REFRESH_TOKEN_EXPIRE_DAYS: int = 7
|
|
|
|
INSTAGRAM_USER_ID: str = ""
|
|
INSTAGRAM_ACCESS_TOKEN: str = ""
|
|
INSTAGRAM_POLL_INTERVAL: int = 1800
|
|
|
|
EXPO_ACCESS_TOKEN: str = ""
|
|
|
|
CORS_ORIGINS: str = "http://localhost:3000,http://localhost:8081,exp://"
|
|
|
|
@property
|
|
def cors_origins_list(self) -> list[str]:
|
|
return [o.strip() for o in self.CORS_ORIGINS.split(",") if o.strip()]
|
|
|
|
|
|
settings = Settings()
|