我无法使用请求表单代码从 html 获取数据到烧瓶上的应用程序
i cant get data with request form code from html to app on flask
我试了很多时间来纠正流程,但我找不到它,请帮助我哪里错了。当我想从表单中获取数据时,它说没有定义的变量。
我已经创建了数据库,我想与这个数据库和用户输入进行比较,然后显示相同的页面结果。
编辑:我无法通过 request.form['veri']
获取 'veri' 值
class Products(db.Model):
id= db.Column(db.Integer, primary_key=True)
french_name = db.Column(db.String(200), nullable=False)
german_name = db.Column(db.String(200), nullable=False)
quantity = db.Column(db.Integer, default=1)
price = db.Column(db.Float, nullable=False)
unit = db.Column(db.String(10), nullable=False)
def __repr__(self):
return '<Products %r>' % self.french_name
@app.route("/")
def index():
return render_template("index.html")
@app.route("/french")
def french():
return render_template("french.html")
@app.route("/german")
def german():
return render_template("german.html")
@app.route("/products", methods=['POST','GET'])
def products():
if request.method =='POST':
veri = request.form['veri']
search = Products.query.filter_by(german_name=veri)
return redirect(url_for('products.html',search=search))
else:
return render_template("products.html")
这是我的 html:
<form action="/products" method="POST">
<input type="text" name="veri">
<input type="submit" value="Search">
</form>
<div>
<table>
{{search.name}}, {{ search.id }} , {{search.quantity}}
</table>
</div>
{% endblock %}
下面是一个访问表单变量的例子。您的问题(访问表单输入数据)变量与您共享的数据库、模型和其他视图无关。
@app.route("/")
def index():
return render_template("index.html")
@app.route('/products', methods=['POST'])
def products():
veri = request.form['veri']
print(veri)
return f'here is veri: {veri}'
index.html
<form action="/products" method="POST">
<input type="text" name="veri">
<input type="submit" value="Search">
</form>
Products.query.filter_by(german_name=request.form.get('search')).all()
是我找到的解决方案
我试了很多时间来纠正流程,但我找不到它,请帮助我哪里错了。当我想从表单中获取数据时,它说没有定义的变量。
我已经创建了数据库,我想与这个数据库和用户输入进行比较,然后显示相同的页面结果。
编辑:我无法通过 request.form['veri']
获取 'veri' 值class Products(db.Model):
id= db.Column(db.Integer, primary_key=True)
french_name = db.Column(db.String(200), nullable=False)
german_name = db.Column(db.String(200), nullable=False)
quantity = db.Column(db.Integer, default=1)
price = db.Column(db.Float, nullable=False)
unit = db.Column(db.String(10), nullable=False)
def __repr__(self):
return '<Products %r>' % self.french_name
@app.route("/")
def index():
return render_template("index.html")
@app.route("/french")
def french():
return render_template("french.html")
@app.route("/german")
def german():
return render_template("german.html")
@app.route("/products", methods=['POST','GET'])
def products():
if request.method =='POST':
veri = request.form['veri']
search = Products.query.filter_by(german_name=veri)
return redirect(url_for('products.html',search=search))
else:
return render_template("products.html")
这是我的 html:
<form action="/products" method="POST">
<input type="text" name="veri">
<input type="submit" value="Search">
</form>
<div>
<table>
{{search.name}}, {{ search.id }} , {{search.quantity}}
</table>
</div>
{% endblock %}
下面是一个访问表单变量的例子。您的问题(访问表单输入数据)变量与您共享的数据库、模型和其他视图无关。
@app.route("/")
def index():
return render_template("index.html")
@app.route('/products', methods=['POST'])
def products():
veri = request.form['veri']
print(veri)
return f'here is veri: {veri}'
index.html
<form action="/products" method="POST">
<input type="text" name="veri">
<input type="submit" value="Search">
</form>
Products.query.filter_by(german_name=request.form.get('search')).all()
是我找到的解决方案