Форум сайта python.su
0
Здравствуйте!
Не могу разобраться в документации https://docs.python.org/3/library/asyncio-eventloop.html#asyncio-date-callback
Что должно быть:
Страница сайта периодически читает данные из БД, а пользователь по нажатию кнопки должен запустить долгую процедуру заполнения БД и видеть процесс заполнения в реальном времени.
Что есть:
JS функция show отправляет каждые 500мс ajax запрос на адрес /api/show и отрисовывает список строк из БД.
На сервере (Flask) ей отвечает функция
@app.route('/api/show') def show(): records = ... return json.dumps(records, cls=AlchemyEncoder)
@app.route('/api/start_db_fill') def start_db_fill(): p = Process(target=worker) p.start() p.join() return json.dumps('') def worker(): loop = asyncio.new_event_loop() asyncio.set_event_loop(loop) loop = asyncio.get_event_loop() loop.run_until_complete(db_fill()) @asyncio.coroutine def db_fill(): ...
Офлайн
49
Мне кажется, Вы немного не то делаете.
Гляньте в эту сторону
Или в эту
Офлайн