18.Python实现Web开发框架【Flask】

18.Python实现Web开发框架【Flask】

引入或下载

from flask import Flask, render_template
from flask_sqlalchemy import SQLAlchemy
import pymysql

# 如果不这样写的话会报一个错误
pymysql.install_as_MySQLdb()
# 创建Flask应用
app = Flask(__name__)
app.config['SQLALCHEMY_DATABASE_URI'] = "mysql://root:123@127.0.0.1:3306/mysql"#数据库连接(用户名,密码Ip地址,端口号可写可不写,数据库名)
app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = False#防止她报警告
# 连接MYSQL数据库
db = SQLAlchemy(app)
# 创建模型
# 定义库模型
class Persons(db.Model):
    __tablename__ = "persons"
    # 定义列表
    id = db.Column(db.Integer, primary_key=True)#Column 数据类型,主键啥的
    name = db.Column(db.String(20))
    age = db.Column(db.Integer)
# 创建路由和函数   "GET", "COPY", "POST" 允许的方法
@app.route("/", methods=["GET", "COPY", "POST"])

返回页面
def hello():
 return render_template("index.html", name=name, age=age, persons=persons)

index.html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
    <h1>你好 Flask</h1>
    <h3>姓名:{{name}}</h3>
    <h3>年龄:{{age}}</h3>
    <table border="1">
        <thead>
            <tr>
                <th>编号</th>
                <th>姓名</th>
                <th>年龄</th>
            </tr>
        </thead>
        <tbody>
        {% for p in persons %}
            <tr>
                <td>{{p.id}}</td>
                <td>{{p.name}}</td>
                <td>{{p.age}}</td>
            </tr>
        {% endfor %}
        </tbody>
    </table>
</body>
</html>
模拟数据内型
def hello():
    # return "你好啊,未来的我,我希望你以后可以自立自强,不要那么傻"
    name = "zs"
    age = 22
    persons = [
        {"id": 1, "name": "zs", "age": 3},
        {"id": 2, "name": "ls", "age": 4},
        {"id": 3, "name": "ww", "age": 5}
    ]
# 路径/<参数类型(可省略): 参数>
@app.route("/student/<int:sid>")
def student(sid):
    return f"传递过来的参数为:{sid}"
# 运行
if __name__ == '__main__':
    # 创建所有模型(表)
    db.create_all()
    app.run(debug=True)

    # debug=True 调试模式  第一次需要运行Test 以后便不需要了
#查询数据库表里面的数据
    persons = Persons.query.all()

Test

from flask import Flask, render_template
from flask_sqlalchemy import SQLAlchemy
import pymysql

# 如果不这样写的话会报一个错误
pymysql.install_as_MySQLdb()


# 创建Flask应用
app = Flask(__name__)
app.config['SQLALCHEMY_DATABASE_URI'] = "mysql://root:123@127.0.0.1:3306/mysql"#数据库连接(用户名,密码Ip地址,端口号可写可不写,数据库名)
app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = False#防止她报警告

# 连接MYSQL数据库
db = SQLAlchemy(app)

# 创建模型
# 定义库模型
class Persons(db.Model):
    __tablename__ = "persons"
    # 定义列表
    id = db.Column(db.Integer, primary_key=True)#Column 数据类型,主键啥的
    name = db.Column(db.String(20))
    age = db.Column(db.Integer)



# 创建路由和函数   "GET", "COPY", "POST" 允许的方法
@app.route("/", methods=["GET", "COPY", "POST"])
def hello():
    # return "你好啊,未来的我,我希望你以后可以自立自强,不要那么傻"
    name = "zs"
    age = 22
    # persons = [
    #     {"id": 1, "name": "zs", "age": 3},
    #     {"id": 2, "name": "ls", "age": 4},
    #     {"id": 3, "name": "ww", "age": 5}
    # ]
    #查询数据库表里面的数据
    persons = Persons.query.all()
    return render_template("index.html", name=name, age=age, persons=persons)


# 路径/<参数类型(可省略): 参数>
@app.route("/student/<int:sid>")
def student(sid):
    return f"传递过来的参数为:{sid}"

# 运行
if __name__ == '__main__':
    # 创建所有模型(表)
    db.create_all()
    app.run(debug=True)

    # debug=True 调试模式  第一次需要运行Test 以后便不需要了

效果展示
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值