У меня есть кнопка, которую пользователь может нажать, она вызывает функцию, и ничего не может произойти, пока функция не завершит выполнение.Можно ли позволить пользователю нажать кнопку, вызвать функцию, но продолжить использование сайта, и когда функция вернет свои выходные данные, сообщите об этом пользователю.
@app.route('/run_probe', methods=['POST'])
def run_probe():
if request.method == 'POST':
input_directory = request.form['directory']
if os.path.isdir(input_directory):
files = get_file_list.probe(input_directory)
return render_template('index.html', files=files)
else:
flash('Could not probe directory')
return redirect(url_for('index'))
Это позволяет пользователю войти в каталог /filepath в <input>
, затем сканирует каталог и возвращает список filepath.Но это нужно закончить, чтобы пользователь мог пойти куда-либо еще.
Было бы неплохо, если бы пользователь мог запустить функцию и сделать что-то еще, а когда функция будет выполнена, вернуть какое-то уведомление.Или даже просто визуальный статус.
Я думал вместо того, чтобы напрямую возвращать список, отправлять вывод на mongodb для последующего поиска, но если я нажму run, ему все равно нужно сделать os.walk()
, прежде чем позволить мне продолжить.