Skip to content

Latest commit

 

History

History
27 lines (20 loc) · 2.19 KB

README.md

File metadata and controls

27 lines (20 loc) · 2.19 KB

Подробное описание:

Импорт необходимых библиотек:
    FastAPI из fastapi для создания веб-приложения.
    BaseModel из pydantic для валидации данных.
    create_engine, Column, Integer, String, declarative_base, sessionmaker, Session из sqlalchemy для работы с базой данных.
    HTTPException, Depends из fastapi для обработки исключений и зависимостей.
    IntegrityError из sqlalchemy.exc для обработки ошибок уникальности.

Настройка базы данных:
    Создается подключение к MySQL базе данных с использованием SQLAlchemy.
    Определяется сессия для взаимодействия с базой данных.
    Создается базовый класс для моделей.

Определение модели пользователя:
    SQLAlchemy модель User с полями id, name, email.
    Pydantic модели UserCreate для валидации данных при создании пользователя и UserResponse для возврата данных пользователя.

Создание маршрутов:
    Маршрут GET /users/{user_id} для получения пользователя по ID. Если пользователь не найден, возвращается ошибка 404.
    Маршрут POST /users/ для создания нового пользователя. Если электронная почта уже зарегистрирована, возвращается ошибка 400.

Этот пример предоставляет базовый функционал и может быть расширен в зависимости от требований вашего проекта. Не забудьте заменить user:password@localhost/test_db на реальные учетные данные и имя базы данных MySQL.

Запуск uvicorn main:app --reload