python html post get,Python Flask html表单不显示GET而不是POST方法?

我正在尝试学习python和一些python web框架。目前我正在遵循一个烧瓶课程,但遇到了一个html表单的问题,我找不到解决方案。在

下面的代码应该在“/”处创建一个非常简单的页面,用户可以使用html表单登录,并在成功登录后重定向到/main。在

但是,页面没有显示html表单,而是立即重定向到/main。在

至少部分问题似乎是request.method返回的是GET,而不是{},因为当我添加flash(request.method)时,GET会返回。在

我已经检查了多次代码,它与我下面的教程完全相同,但是结果不一样。在

我使用的是python3.5,我相信Flask版本是0.10.1。在

这是我的主要python文件:from flask import Flask, render_template, request, session, \

flash, redirect, url_for, g

import sqlite3

# configuration

DATABASE = 'blog.db'

USERNAME = 'admin'

PASSWORD = 'admin'

SECRET_KEY = 'hard_to_guess'

app = Flask(__name__)

# pulls in app configuration by looking for UPPERCASE variables

app.config.from_object(__name__)

# function used for connecting to the database

def connect_db():

return sqlite3.connect(app.config['DATABASE'])

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

def login():

error = None

if request.method == 'POST':

if request.form['username'] != app.config['USERNAME'] or\

request.form['password'] != app.config['PASSWORD']:

error = 'Invalid credentials. Please try again.'

else:

session['logged_in'] = True

return redirect(url_for('main'))

return render_template('login.html', error=error)

@app.route('/main')

def main():

return render_template('main.html')

@app.route('/logout')

def logout():

session.pop('logged_in', None)

flash('You were logged out')

return redirect(url_for('login'))

if __name__ == '__main__':

app.run(debug=True)

下面是login.html代码:

^{pr2}$

如有任何帮助或建议,我们将不胜感激。在

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值