Python_Flask01

所有人都不许学Java了,都来学Python!

如果不来学的话请网爆我的老师---蔡老师

Flask的前世姻缘

我不知道,没啥用,要学好这个框架,其实多读书,多看报就行了,真心想了解的话!

Welcome to Flask --- Flask Documentation (3.1.x) (palletsprojects.com)https://flask.palletsprojects.com/en/stable/

创建Flask项目

第一步

点击File,点击NewProject

第二步

创建成功

简单不?都给我去学习Python!!!!(可以网爆我的老师,但是不能黑我的哥哥)

学习Flask

整体代码

python 复制代码
from flask import Flask
from flask import render_template
from flask import request

app = Flask(__name__)


@app.route('/')
def hello_world():  # put application's code here
    return render_template('test.html')


@app.route('/detail/<id>/<name>')
# http://127.0.0.1:8085/detail/5/6666 这种形式
def getId(id, name):
    return render_template('test.html', id=id, name=name)


@app.route('/test')
# http://127.0.0.1:8085/test?id=5&name=box&password=666  使用的是query的拼接方式
# 使用的request中的args.get('字段')方式获取这个字段的值
def getQuery():
    id = request.args.get('id')
    name = request.args.get('name')
    password = request.args.get('password')
    return render_template('user.html', id=id, name=name, password=password)


# 这个地方主要是继承的使用方式
@app.route('/child')
def getExtend():
    return render_template('child.html')


@app.route('/static')
def getImage():
    return render_template('image.html')


if __name__ == '__main__':
    # 启动方法
    app.run()

解释

根路径

python 复制代码
@app.route('/')
def hello_world():  # put application's code here
    return render_template('test.html')

假设服务是http://127.0.0.1:8085

那输入上面的这个路径就会使用render_template工具,随后去寻找test.html文件,将test.html文件的内容进行渲染在页面,下面提供的是test.html文件的内容。

html 复制代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
    <div>你好</div>
    <div>{{ id }}</div>
 <div>{{ name }}</div>
</body>
</html>

传参方式

python 复制代码
@app.route('/detail/<id>/<name>')
# http://127.0.0.1:8085/detail/5/6666 这种形式
def getId(id, name):
    return render_template('test.html', id=id, name=name)


@app.route('/test')
# http://127.0.0.1:8085/test?id=5&name=box&password=666  使用的是query的拼接方式
# 使用的request中的args.get('字段')方式获取这个字段的值
def getQuery():
    id = request.args.get('id')
    name = request.args.get('name')
    password = request.args.get('password')
    return render_template('user.html', id=id, name=name, password=password)

不能说好理解,只能说非常容易,主要就是request工具获取参数和路径后面直接拼接参数的两种获取方式

加载静态资源

html 复制代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
   <link rel="stylesheet" type="text/css" href="{{ url_for('static', filename='css/index.css') }}">
</head>
<img class="image" src="{{ url_for('static',filename='image/react.png') }}" />
</body>
</html>

使用的方式是url_for的方式去展示静态资源

语法(拿html解释)

html 复制代码
<img class="image" src="{{ url_for('static',filename='image/react.png') }}" />

继承

father.html

html 复制代码
<!-- base.html -->
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>{% block title %}My Website{% endblock %}</title>
</head>
<body>
    <header>
        <h1>欢迎来到我的网站</h1>
    </header>

    <main>
        {% block content %}
        <!-- 默认内容 -->
        {% endblock %}
    </main>

    <footer>
        <p>版权所有 &copy; 2023</p>
    </footer>
</body>
</html>

child.html

html 复制代码
<!-- child.html -->
{% extends "father.html" %}

{% block title %}子页面标题{% endblock %}

{% block content %}
    <h2>这是子页面</h2>
    <p>这里是子页面的内容。</p>
{% endblock %}

测试效果:访问http://127.0.0.1:8085/child

python 复制代码
# 这个地方主要是继承的使用方式
@app.route('/child')
def getExtend():
    return render_template('child.html')
相关推荐
Excel_VBA表格จุ๊บ2 小时前
wps宏js接入AI功能和接入翻译功能
javascript·wps·js宏
hikktn2 小时前
Java 兼容读取WPS和Office图片,结合EasyExcel读取单元格信息
java·开发语言·wps
music&movie2 小时前
代码填空任务---自编码器模型
python·深度学习·机器学习
小青柑-2 小时前
Go语言中的接收器(Receiver)详解
开发语言·后端·golang
豪宇刘3 小时前
JavaScript 延迟加载的方法
开发语言·javascript
风一样的树懒3 小时前
Python使用pip安装Caused by SSLError:certificate verify failed
人工智能·python
测试最靓仔3 小时前
allure报告修改默认语言为中文
python·自动化
摇光933 小时前
js迭代器模式
开发语言·javascript·迭代器模式
美丽的欣情4 小时前
Qt实现海康OSD拖动Demo
开发语言·qt
AI视觉网奇4 小时前
imageio 图片转mp4 保存mp4
python