Flask - сделать страницу без возврата - PullRequest
0 голосов
/ 08 октября 2019

Я работаю над приложением, в котором пользователь заполняет форму. Одно из полей запрашивает почтовый индекс. Когда запрос отправлен, отдельный поток запускает код Python с использованием PYQT5, отображая страницу и просматривая веб-страницы (не хотят платить за API от Google), обеспечивая расстояние между заданным почтовым индексом и заданным почтовым индексом. Результаты этой цепочки сохраняются в файле.

Я хотел бы открыть новую веб-страницу с информацией о проверке данных. На этой странице запускается код Python, который проверяет результаты в файле (который занимает до нескольких секунд) с использованием цикла while. если результат находится в файле, страница перенаправляется на другую страницу.

Есть ли способ визуализации страницы (или перенаправления на другую страницу) без использования RETURN? я понимаю, что когда я использую return render_templates (page), остальная часть кода игнорируется.

@app.route('/add_user', methods=['GET', 'POST'])
def add_user():
    file = open('app/results_from_g.txt','w')
    file.write('')
    file.close()
    form = AddForm()
    if form.validate_on_submit():
        url = 'https://google.co.uk/maps/dir/...'
        def sendtogoogle(url):    
            os.system('python googlemaps_mileage.py ' +url)                
        thread1=threading.Thread(target=sendtogoogle, args=(url,))
        thread1.start()

следующая строка кода должна быть перенаправлена ​​на другую страницу, а когда результаты находятся в файле, либо сюдаили другая страница:

while result_from_file==0:
            file = open('results_from_g.txt','r')
            result_from_file = file.read()
            if result_from_file =='': #means no data saved in the file yet    
                time.sleep(1)
            elif wynik =='0': #means wrong postcode
                //render page 'wrong postcode'
            else:              
                //render page 'correct postcode
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...