flask get和post请求使用


 

直接看代码

#-*-coding:utf-8-*-
from flask import Flask,url_for,redirect,render_template,request
app = Flask(__name__)

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


@app.route('/search')
def search():
    print (request.args)          #get请求,打印url后面所有的参数(key:value形式),如果有多个参数,通过request.args.get('key')的方式获取值
    return render_template('search.html')


@app.route('/login/',methods=['POST','GET'])
def login():
    if request.method == 'GET':              #此处判断get和post方法与django相同
        return render_template('login.html')
    else:
        username = request.form.get('username')    #post请求。获取模版语言中输入框输入的值
        password = request.form.get('password')

        return "post request, username: %s password:%s" % (username,password)


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

 

模版语言:

search.html <!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<a href="{{ url_for('search',q='hello') }}">搜索参数测试链接</a>
</body>
</html>


login.html
{% extends "base.html" %}

{% block main %}
    <form action="{{ url_for('login') }}" method="post">
        <table>
            <tbody>
                <tr> <td>用户名:</td> <td><input type="text" placeholder="请输入用户名" name="username" /></td> </tr> <tr> <td>密码:</td> <td><input type="text" placeholder="请输入密码" name="password" /></td> </tr> <tr> <td></td> <td><input type="submit" value="登陆"/></td> </tr>
            </tbody>
        </table>
    </form>
{% endblock %}


base.html <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> <link rel="stylesheet" href="{{ url_for('static',filename='css/index.css') }}"> <style> .nav{ background:rebeccapurple; height:65px; } ul{ overflow: hidden; } ul li{ float: left; list-style: none; padding:0 10px; line-height: 65px; } ul li a{ color: white; } </style> </head> <body> <div class="nav"> <ul> <li><a href="{{ url_for('login') }}">登陆</a></li> <li><a href="#">发布问答</a></li> </ul> </div> {% block main %} {% endblock %} <img src="{{ url_for('static',filename='images/aa.jpg') }}"> </body> </html>

 

 

访问链接

http://127.0.0.1:5000/search

打印结果

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM