Передача переменной HTML в python

#python #html #flask

#python #HTML #flask

Вопрос:

Я пытаюсь передать данные моей HTML-формы в python с помощью flask, однако я не уверен на 100%, где я ошибаюсь

Python

 from flask import Flask, render_template, request

app = Flask(__name__)

@app.route('/')
def index():
   return render_template('home.html')

@app.route('/form', methods = ['GET', 'POST'])
def form():
    your_name = request.form['your_name']
        customer_number = request.form['customer_number']
        msg = request.form['msg']

if __name__ == '__main__':
   app.run()
  

Это мое из из HTML

 <form action="smssend.py" method="post">
  <label for="msg">Message</label>
  <textarea id="msg" name="msg" rows="5" cols="50"> </textarea> <br>
  <label for="your_name">Your Name:</label>
  <input type="text" name="your_name" id="your_name" /> <br>
  <label for="customer_number">Customers Number:</label>
  <input type="text" name="customer_number" id="customer_number" /> <br>
<input type="submit">
</form>
  

Комментарии:

1. В чем проблема?

2. когда я нажимаю отправить в своем html, он просто открывает мой скрипт Python в моем веб-браузере, похоже, он не выполняется

Ответ №1:

Вам нужно изменить действие на URL, который обрабатывает запрос, следующим образом:

 <form action="http://localhost:8000/form" method="post"> ... </form>
  

ofc измените URL в соответствии с вашими настройками.

Комментарии:

1. это просто возвращает код python в виде текста, я немного запутался, как заставить это работать