[英]Flask App: Could not build url for endpoint 'post_to_db'
我是制作 Flask 應用程序的新手,所以我可能會遺漏一些明顯的東西。 What I am trying to do is take a value from a slider and increment a value in my postgresql table by the slider value and then increment another value in my postgresql table by 1. I am getting the error:
werkzeug.routing.BuildError: Could not build url for endpoint 'post_to_db'. Did you mean 'static' instead?
這是我的 html:
<form method="POST" action="{{ url_for('post_to_db') }}">
<input class='slider'id="mydata" name="mydata" type="range" min="0" max="10" value="5" step='1'>
<div id='button-dock'>
<button type='submit'>"Show Me Another"</button>
</div>
</form>
這是我的 python:
class Dataentry(db.Model):
__tablename__ = "shoe-ratings"
id = db.Column(db.Integer, primary_key=True)
total_score = db.Column(db.Integer)
num_ratings = db.Column(db.Integer)
def __init__(self, total_score, num_ratings):
self.total_score = total_score
self.num_ratings = num_ratings
def __repr__(self):
return '<id {}>'.format(self.id)
def serialize(self):
return {
'id': self.id,
'total_score': self.total_score,
'num_ratings': self.num_ratings
}
@app.route("/virgil_io/submit/", methods=["POST"])
def post_to_db():
score = request.form['mydata']
shoe = Dataentry.query.first()
shoe.total_score = shoe.c.total_score + score
shoe.num_ratings = shoe.c.num_ratings + 1
try:
db.session.add(shoe)
db.session.commit()
except Exception as e:
print("\n FAILED entry\n")
print(e)
sys.stdout.flush()
return "Success"
@APP.route('/virgil_io/')
def index():
return flask.render_template('index.html')
這是我的目錄:
我嘗試過的事情:
methods=["POST"]
有任何想法嗎? 謝謝!
一如既往,這是一件愚蠢的小事。 我的應用程序被命名為APP
,但我使用的是這種方法的app
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.