from pydantic_settings import BaseSettings class Settings(BaseSettings): database_url: str port: int = 8080 settings = Settings() Use code with caution. Copied to clipboard
: Your logic doesn't need to know where a database is; it just needs the connection string provided by the config.
The most straightforward approach is defining variables directly in a .py file and importing them. config.py
Flask often uses classes to manage environments. You can create a base config and override it for specific environments.
Using libraries like Pydantic Settings allows you to create a "Settings" class that automatically pulls from environment variables and validates data types. Flask often uses classes to manage environments
: Strong typing prevents runtime crashes from bad config.
class Config: SECRET_KEY = "base-key" class ProductionConfig(Config): DEBUG = False Use code with caution. Copied to clipboard Best Practices for Your Config Working with Credentials and Configurations in Python : Strong typing prevents runtime crashes from bad config
Depending on your project's complexity, there are several ways to structure this file: