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
34 lines
908 B
Python
34 lines
908 B
Python
#!/usr/bin/env python3
|
||
# -*- coding: utf-8 -*-
|
||
from functools import lru_cache
|
||
|
||
from pydantic_settings import BaseSettings, SettingsConfigDict
|
||
|
||
from backend.core.path_conf import BasePath
|
||
|
||
|
||
class AdminSettings(BaseSettings):
|
||
"""Admin Settings"""
|
||
|
||
model_config = SettingsConfigDict(env_file=f'{BasePath}/.env', env_file_encoding='utf-8', extra='ignore')
|
||
|
||
# OAuth2:https://github.com/fastapi-practices/fastapi_oauth20
|
||
OAUTH2_GITHUB_CLIENT_ID: str
|
||
OAUTH2_GITHUB_CLIENT_SECRET: str
|
||
|
||
# OAuth2
|
||
OAUTH2_GITHUB_REDIRECT_URI: str = 'http://127.0.0.1:8000/api/v1/auth/github/callback'
|
||
|
||
# Captcha
|
||
CAPTCHA_LOGIN_REDIS_PREFIX: str = 'fba_login_captcha'
|
||
CAPTCHA_LOGIN_EXPIRE_SECONDS: int = 60 * 5 # 过期时间,单位:秒
|
||
|
||
|
||
@lru_cache
|
||
def get_admin_settings() -> AdminSettings:
|
||
"""获取 admin 配置"""
|
||
return AdminSettings()
|
||
|
||
|
||
admin_settings = get_admin_settings()
|