Da sh обратные вызовы, которые нужно совершать ожидающие звонки - PullRequest
0 голосов
/ 28 января 2020

У меня есть обратный вызов в Flask+dash

server = Flask(__name__, static_folder='static')
app =  dash.Dash(external_stylesheets=external_stylesheets, server=server)

, таким образом:

@server.route("/Data/<symbol>")
def Data(symbol):
    ib.qualifyContracts(symbol)

Это дает warning (на самом деле это ошибка):

RuntimeWarning:

coroutine 'IB.qualifyContractsAsync' was never awaited

Однако, если я поставлю async перед def soo, я смогу дождаться вызова функции (но даже не вставляя ожидание):

@server.route("/Data/<symbol>")
async def Data(symbol):
    ib.qualifyContracts(symbol)

Я получу exception

TypeError
TypeError: The view function did not return a valid response. The return type must be a string, dict, tuple, Response instance, or WSGI callable, but it was a coroutine.

Как справиться с dash callbacks, которому нужно вызывать другие функции, которые должны быть await способными?

...