当前位置:   article > 正文

python:flask 模块 网页开发 demo_python 网页 demo

python 网页 demo

这里写目录标题

测试的时候,按照分割线来

flask_demo.py

from flask import Flask, render_template, request

# web应用程序  WSGI应用程序 (Web服务器网关接口)
app = Flask(__name__)  # 使用当前模块(__name __)的名称作为参数

# 写一个函数,处理浏览器发来的请求
# 路由:通过浏览器访问过来的请求,的位置
@app.route("/")  # 访问到 127.0.0.1:5000,的位置
def index():
    # 处理 业务逻辑
    return "hello world~"

@app.route("/name")
def name():  #  函数名无所谓
    return "I am Jay"
# route(rule, options)函数是一个装饰器,它告诉应用程序哪个URL应该调用相关的函数。 '/ ' URL与index()函数绑定
# rule 参数表示与该函数的URL绑定。
# options 是要转发给基础Rule对象的参数列表



#====================================
# 模板 --> html
@app.route("/")
def index():
    return render_template('hello.html')  # 会自动去 template 目录下找 对应的网页

# 变量 发送到 网页
@app.route("/")
def index():
    # 字符串
    s = 'This is str'
    lst = ['e1', 'e2', 'e3']
    return render_template('hello.html', str_s=s)  # str_s,需要在网页中


#====================================
# 从网页接收数据
# 例:登录验证
@app.route("/")
def index():
    return render_template('login.html')

@app.route("/login", method=["POST"])  # 对应网页中的 方法
def index():
    # 接收 用户名 密码
    # {user:填写内容 , pwd:填写内容}
    user = request.form.get("user")  # form 对应 网页中 的位置 form
    password = request.form.get("pwd")
    # URL 传参
    # request.args.get()
    # 判断 逻辑
    if user == '' and password == '':
        return 'successed'
    else:
        return render_template('login.html', msg='failed')


#====================================
if __name__ == "__main__":
    app.run(host='0.0.0.0', port=9999, debug=True)  # 运行程序  # app.run(host, port, debug, options)
    # host='0.0.0.0'  # 要监听的主机名。 默认为127.0.0.1(localhost)。设置为“0.0.0.0”以使服务器在外部可用
    # debug=True  # 文件修改,自动加载
    # port=5000,默认值

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 54
  • 55
  • 56
  • 57
  • 58
  • 59
  • 60
  • 61
  • 62
  • 63
  • 64
  • 65

hello.html

<!-- ! + tab 快速新建 -->
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    Welcome to my  Web !!!
    <a href="#">你好,我是超链接</a> 
    <hr/>   <!-- 分割线 -->
    <!-- 变量传参-->
    <a href="#">你好,我是{{str_s}}</a> 
    <hr/> 
    <!-- for 循环 -->  
    <!-- #{% %}这样代表控制语句 -->
    {% for item in lit}
    列表循环: {{item}}
    {% endfor %}

</body>
</html>
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24

login.html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <!-- method:请求方式。
        POST 隐式提交,
        GET 显示提交 -->
        
    <form action="/login" method="POST"><br/>  <!-- action :路由位置 -->
        用户名 <input type="text" name="user" id="" > <br/>  <!-- name:键值对 -->
        密码 <input type="password" name="pwd" id="" ><br/> 
        <input type="submit" value="">
        {{msg}}
    </form>
</body>
</html>
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21

Flask 中文文档
https://dormousehole.readthedocs.io/en/latest/quickstart.html.

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家小花儿/article/detail/812511
推荐阅读
相关标签
  

闽ICP备14008679号