Flask 方法不允许:请求的URL不允许使用该方法
不允许使用方法:不允许使用该方法,因为发布评论时会出现请求的URL错误。您的@app.route“/”需要包含方法参数,并将POST作为选项。默认情况下,这不包括在内,只允许GET:Flask 方法不允许:请求的URL不允许使用该方法,flask,sqlalchemy,flask-wtforms,Flask,Sqlalchemy,Flask Wtforms,不允许使用方法:不允许使用该方法,因为发布评论时会出现请求的URL错误。您的@app.route“/”需要包含方法参数,并将POST作为选项。默认情况下,这不包括在内,只允许GET: @app.route('/<int:bookid>') def view(bookid): if "user" in session: user = session["user"] review = ReviewFo
@app.route('/<int:bookid>')
def view(bookid):
if "user" in session:
user = session["user"]
review = ReviewForm(request.form)
**# ...get isbn,author,username,title from database**
if request.method == 'POST':
review = review.data['review']
stars = review.data['stars']
db.execute("INSERT INTO reviews (username,review,bookid,stars) VALUES (:u,:r,:bi,:s)",{"u":user,"r":review,"bi":bookid,"s":stars})
db.commit()
rev=db.execute("SELECT EXISTS(SELECT REVIEW FROM reviews WHERE reviews.bookid = :id AND reviews.username =:username )",{"id":bookid,"username":user}).fetchone()[0]
**# ...get rating from api**
results=[]
res=db.execute("SELECT * from reviews WHERE bookid = :id",{"id":bookid})
results=res.fetchall()
if len(results) != 0:
table = Reviews(results)
table.border = True
return render_template("bookdetails.html",rev=rev,user=user,title=booktitle,bookisbn=bookisbn,author=bookauthor,year=bookyear,table=table,form=review)
else:
return render_template("bookdetails.html",rev=rev,user=user,title=booktitle,bookisbn=bookisbn,author=bookauthor,year=bookyear,table="No Reviews",form=review)
else:
return redirect(url_for('login'))
您的@app.route“/”需要将methods参数与POST一起作为选项。默认情况下,这不包括在内,只允许GET:
@app.route('/<int:bookid>')
def view(bookid):
if "user" in session:
user = session["user"]
review = ReviewForm(request.form)
**# ...get isbn,author,username,title from database**
if request.method == 'POST':
review = review.data['review']
stars = review.data['stars']
db.execute("INSERT INTO reviews (username,review,bookid,stars) VALUES (:u,:r,:bi,:s)",{"u":user,"r":review,"bi":bookid,"s":stars})
db.commit()
rev=db.execute("SELECT EXISTS(SELECT REVIEW FROM reviews WHERE reviews.bookid = :id AND reviews.username =:username )",{"id":bookid,"username":user}).fetchone()[0]
**# ...get rating from api**
results=[]
res=db.execute("SELECT * from reviews WHERE bookid = :id",{"id":bookid})
results=res.fetchall()
if len(results) != 0:
table = Reviews(results)
table.border = True
return render_template("bookdetails.html",rev=rev,user=user,title=booktitle,bookisbn=bookisbn,author=bookauthor,year=bookyear,table=table,form=review)
else:
return render_template("bookdetails.html",rev=rev,user=user,title=booktitle,bookisbn=bookisbn,author=bookauthor,year=bookyear,table="No Reviews",form=review)
else:
return redirect(url_for('login'))
你能格式化你的代码吗?你能添加更多的细节吗?你能格式化你的代码吗?你能补充更多细节吗?