Проблема с использованием Depends() из FastApi с AsyncGeneratorPython

Программы на Python
Ответить Пред. темаСлед. тема
Гость
 Проблема с использованием Depends() из FastApi с AsyncGenerator

Сообщение Гость »


Я пытаюсь установить клиентское соединение с Redis в своем приложении

def create_app(): приложение = FastAPI(docs_url='/') Task_queue: Очередь @app.on_event("запуск") async def start_event(redis_conn: redis.asyncio.Redis = Depends(get_async_redis_client)): нелокальная очередь_задач Task_queue = Queue("task_queue", Connection=redis_conn) @app.post("/add_data") асинхронная защита add_data(data: str): Task_queue.enqueue(process_data, данные) return {"message": "Книга в обработке"} @app.get("/get_data") асинхронная защита get_data(): вернуть {"данные": "кек"} вернуть приложение защита основной(): uvicorn.run( f"{__name__}:create_app", хост = '0.0.0.0', порт = 8888, перезагрузка = Истина ) если __name__ == '__main__': Распечатать("") основной() Генератор get_async_redis_client получен от:

redis_pool = redis.asyncio.ConnectionPool.from_url(f"redis://{REDIS_HOST}:{REDIS_PORT}") async def get_async_redis_client() -> AsyncGenerator[Redis, None]: асинхронно с Redis.from_pool(redis_pool) в качестве клиента: доходный клиент Когда я отправляю POST-запрос к «\add_data», я получаю ошибку

Файл "C:\Users\Степан\PycharmProjects\testToBaum\src\main.py", строка 28, в add_data Task_queue.enqueue(process_data, данные) Файл "C:\Users\Степан\PycharmProjects\testToBaum\venv\Lib\site-packages\rq\queue.py", строка 972, в очереди вернуть self.enqueue_call( ^^^^^^^^^^^^^^^^^^^ Файл "C:\Users\Степан\PycharmProjects\testToBaum\venv\Lib\site-packages\rq\queue.py", строка 721, в enqueue_call return self.enqueue_job(job, конвейер=конвейер, at_front=at_front) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^ Файл "C:\Users\Степан\PycharmProjects\testToBaum\venv\Lib\site-packages\rq\queue.py", строка 1095, в enqueue_job return self._enqueue_job(задание, конвейер=конвейер, at_front=at_front) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^ Файл "C:\Users\Степан\PycharmProjects\testToBaum\venv\Lib\site-packages\rq\queue.py", строка 1111, в _enqueue_job труба = конвейер, если конвейер не None else self.connection.pipeline() ^^^^^^^^^^^^^^^^^^^^^^^^^ AttributeError: объект «Зависит» не имеет атрибута «конвейер» Я думал, что когда я использую Depends() с генератором, «redis_conn» должен быть объектом redis.asyncio.Redis.

Раньше работал тот же случай с соединением postgresql
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Проблема с использованием Depends() из FastApi с AsyncGenerator
    Гость » » в форуме Python
    0 Ответы
    13 Просмотры
    Последнее сообщение Гость
  • FastAPI/pydantic: field_validator не учитывается при использовании пустого Depends()
    Anonymous » » в форуме Python
    0 Ответы
    22 Просмотры
    Последнее сообщение Anonymous
  • FastAPI/pydantic: field_validator не учитывается при использовании пустого Depends()
    Anonymous » » в форуме Python
    0 Ответы
    22 Просмотры
    Последнее сообщение Anonymous
  • Как использовать Depends или что-то подобное в качестве внедрения зависимостей вне методов запроса FastAPI?
    Anonymous » » в форуме Python
    0 Ответы
    10 Просмотры
    Последнее сообщение Anonymous
  • Поток ответа в Flask с помощью AsyncGenerator
    Anonymous » » в форуме Python
    0 Ответы
    22 Просмотры
    Последнее сообщение Anonymous

Вернуться в «Python»