Логотип YeaHub

База вопросов

Собеседования

Тренажёр

База ресурсов

Обучение

Навыки

Задачи

Войти

Выбери, каким будет IT завтра — вместе c нами!

YeaHub — это полностью открытый проект, призванный объединить и улучшить IT-сферу. Наш исходный код доступен для просмотра на GitHub. Дизайн проекта также открыт для ознакомления в Figma.

© 2026 YeaHub

AI info

Карта сайта

Документы

Медиа

Назад
Вопрос про FastAPI: injection, dependency, modules, fast api, global variables

Как можно обеспечить доступ к глобальным переменным между модулями в FastAPI?

Вопрос раскрывает подходы к безопасному использованию глобальных переменных в FastAPI.

Короткий ответ

Глобальные переменные можно делиться через общий модуль или использовать Dependency Injection для большей гибкости.

Длинный ответ

Для обеспечения доступа к глобальным переменным рекомендуется создание модуля конфигурации, где определяются все такие переменные. Этот модуль импортируется в нужных местах, что обеспечивает удобный доступ. Например

# config.py
db_connection = None
# main.py
from config import db_connection
db_connection = connect_to_db()

Более продвинутым подходом является использование Dependency Injection, которое позволяет безопасно передавать зависимости (например, соединения с базой данных) только в необходимые обработчики. Это помогает поддерживать контролируемый доступ к глобальным данным.

# dependencies.py
from fastapi import Depends

def get_db():
    	return db_connection

Когда использовать:

  • Для настройки или подключения общих ресурсов, таких как кэш или база данных.

  • Аватар

    Python Guru

    Sergey Filichkin

    Guru – это эксперты YeaHub, которые помогают развивать комьюнити.

Уровень

  • Рейтинг:

    2

  • Сложность:

    5

Навыки

  • FastAPI

    FastAPI

Ключевые слова

#injection

#dependency

#modules

#fast api

#global variables

Подпишись на Python Developer в телеграм

  • Аватар

    Python Guru

    Sergey Filichkin

    Guru – это эксперты YeaHub, которые помогают развивать комьюнити.