Вернуть несколько шаблонов - PullRequest
0 голосов
/ 29 января 2019

В настоящее время я пытаюсь открыть несколько страниц по запросу POST.По сути, я занимаюсь поиском номера работы в базе данных, отправляя запрос POST, а затем (пытаясь) открыть несколько страниц, соответствующих этому номеру работы (например, веб-страница для определения местоположения, одна для материала и т. Д.)..) Однако я могу вернуть только один шаблон для браузера.Я посмотрел на множество вопросов, подобных этому:

Отображение нескольких шаблонов одновременно во Flask

Однако я не могу найти ответ на свой вопрос (большинствоскорее всего, потому что я задаю неправильный вопрос ...) В любом случае, мой код пока выглядит примерно так:

HTML:

<form action="/testing" method="POST" id="existBidFormOne" name="existBidFormOne" autocomplete="off">
        <!-- Row one holds Title-->
        <div class="center row" style="width: 100%;">
            <h1>Enter a Job Number or a Project Name:</h1>
        </div>

        <!-- Row two holds job number-->
        <div class="row">
            <!-- Column one holds Job number-->
            <div class="col-m-6">
                <div class="row centerInput">
                    <div class="col-m-4 inputPad"><b>Job Number:</b></div>
                    <div class="col-m-8 noPad">
                        <input type="text" id="exb_jobNumber" name="exb_jobNumber" class="input maxWidth" />
                    </div>
                </div>
            </div>
        </div>
        <div class="centerInput row">
            <span>
                <button type="submit" id="exb_searchOne" class="srchBtn">Search</button>
            </span>
        </div>
    </form>

FLASK:

@app.route('/testing', methods=["GET", "POST"])
def testing():
    if request.method == 'POST':
        job_num = request.form.getlist('exb_jobNumber')
        if job_num:
            session = Session()
            results = ds.get_job_info(session, job_num) # returns dict
            results2 = ds.get_job_material(session, job_num) #returns dict
            session.close()
            # open page one
            return render_template('pageOne.html', **results)

Приведенный выше код хорошо работает при открытии одной страницы, однако я также хотел бы открыть:

render_template('pageTwo.html', **results2)

Спасибо!

1 Ответ

0 голосов
/ 29 января 2019

открытие нескольких страниц Если вы хотите открыть несколько страниц на одной веб-странице (т. Е. На одной вкладке браузера), то вы можете комбинировать и отображать столько отдельных шаблонов, сколько хотите, с помощью наследование шаблонов .Вы можете иметь одну базовую страницу и вкладывать много вложенных страниц с любым содержимым, которое вам нужно.

Если вы хотите открыть несколько страниц на нескольких вкладках браузера, вам следует вернуть только одну главную страницу HTML (т.е. один шаблон).), но установите переменную на этой веб-странице со ссылками на все страницы, которые вы хотите открыть в новых вкладках браузера.Затем с помощью JavaScript и метода браузера API window.open () вы можете открыть эти страницы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...