Есть ли способ вернуть вывод функции в шаблоне html в Python? - PullRequest
0 голосов
/ 02 августа 2020

Я использую приведенный ниже код:

def static_info(nm):
    cursor.execute("SELECT name,age,FROM MyDB where name like ?",(nm) + '%')
    for row in cursor:
        static={"NAME: ":row[0],"AGE: ":row[1]}
    return(static)

@app.route('/submit_form')
def submit_form():
    nm = request.form.get('name')
    info=static_info(nm)
    return render_template('static_display.html',info=info)

Мне нужен желаемый вывод функции (в виде словаря) на моем static_display. html page

Есть предложения?

1 Ответ

1 голос
/ 02 августа 2020

Странное кодирование.

  1. Ваш l oop in static_info(nm) вернет только последний элемент. Вы ничего не добавляете

  2. Ваш @app.route('/submit_form') не принимает POST-сообщения. Вам нужно:

    @app.route ('/ submit_form', methods = ['GET', 'POST'])

  3. В вашем шаблоне static_display.html, вам понадобится {{ info }}

  4. Если вы измените свой код, чтобы вы могли oop поверх списка в вашем шаблоне, вам понадобится что-то вроде:

    { % для элемента в информации%} {% для ключа, значения в item.items ()%} {{ключ}}: {{значение}} {% endfor%} {% endfor%}

...