Quản lý cấu hình dự án Python chuyên nghiệp với Pydantic Settings
Thay vì viết cứng giá trị hay sử dụng lặp lại các lệnh `os.getenv()`, hãy tìm hiểu cách dùng thư viện `pydantic-settings` để quản lý file `config.py` tối ưu hơn. Cách tiếp cận này cung cấp tính năng type safety, giá trị mặc định và khả năng ghi đè linh hoạt cho môi trường sản xuất.

Mọi dự án phần mềm thường đều bắt đầu theo một quy trình khá giống nhau. Bạn viết cứng (hardcode) một vài giá trị, rải rác các cuộc gọi os.getenv() trong mã nguồn, và tự nhủ với bản thân: "Mình sẽ dọn dẹp việc này sau."
Nhưng "sau đó" thực sự chẳng bao giờ đến.
Thay vì tiếp tục cách làm thủ công đó, hãy thử áp dụng giải pháp dưới đây ngay lập tức.
Cài đặt thư viện
Đầu tiên, bạn cần cài đặt gói pydantic-settings thông qua pip:
pip install pydantic-settings
Thiết lập file config.py
Dưới đây là cách triển khai một file config.py chuẩn và gọn gàng sử dụng Pydantic:
from pydantic_settings import BaseSettings
class Settings(BaseSettings):
APP_ENV: str = "development"
APP_TITLE: str = "App Title"
APP_VERSION: str = "1.0.0"
FRONTEND_URL: str = "http://localhost:5173"
SECRET_KEY: str
CORS_ORIGINS: list[str] = []
class Config:
env_file = ".env"
env_file_encoding = "utf-8"
case_sensitive = True
extra = "ignore"
settings = Settings()
Tại sao cách tiếp cận này lại hiệu quả?
Phương pháp này mang lại ba lợi ích chính cho nhà phát triển:
- Giá trị mặc định (Defaults): Ứng dụng của bạn có thể chạy ngay lập tức mà không cần cấu hình phức tạp từ đầu.
- Ghi đè từ biến môi trường (Env overrides): Bạn có thể dễ dàng thay đổi cấu hình khi triển khai (deploy) lên môi trường production mà không sợ làm gãy ứng dụng.
- An toàn kiểu dữ liệu (Type safety): Nhờ có định nghĩa kiểu (type hints), bạn sẽ tránh được những lỗi bug khó chịu do dữ liệu không đúng định dạng gây ra trong tương lai.
Cách sử dụng trong dự án
Để sử dụng cấu hình đã thiết lập, bạn chỉ cần nhập module và gọi đối tượng settings:
import config.settings
print(settings.APP_ENV)
Xong. Đơn giản và chuyên nghiệp.
Bài viết liên quan

Phần mềm
Hiểu rõ bản chất quy tắc thay vì tìm cách lách luật trong lập trình hệ thống
16 tháng 6, 2026

Công nghệ
Các tác nhân AI đã khiến thế giới công nghệ chao đảo: Câu chuyện đằng sau cuộc cách mạng Claude Code và OpenClaw
26 tháng 5, 2026

Phần mềm
Epic Games giới thiệu Lore: Hệ thống kiểm soát phiên bản mã nguồn mở thế hệ mới
17 tháng 6, 2026
