李世钦
2022-06-08 17:06
采纳率: 0%
浏览 45
已结题

想通过flask连接数据库进行数据库处理,一直报错

使用pycharm 建立flask文件,连接数据库了,但是程序一运行就会报错
C:\Users\Administrator\AppData\Roaming\Python\Python310\site-packages\flask_sqlalchemy_init.py:851: UserWarning: Neither SQLALCHEMY_DATABASE_URI nor SQLALCHEMY_BINDS is set. Defaulting SQLALCHEMY_DATABASE_URI to "sqlite:///:memory:".
warnings.warn(
C:\Users\Administrator\AppData\Roaming\Python\Python310\site-packages\flask_sqlalchemy_init
.py:872: FSADeprecationWarning: SQLALCHEMY_TRACK_MODIFICATIONS adds significant overhead and will be disabled by default in the future. Set it to True or False to suppress this warning.
warnings.warn(FSADeprecationWarning(

from flask import Flask,render_template
from flask_sqlalchemy import SQLAlchemy

app = Flask(__name__)

# 6.创建数据库模型制作表
db = SQLAlchemy(app)
DEBUG = True

class Config:
    SQLALCHEMY_COMMIT_ON_TEARDOWN = True
    SQLALCHEMY_TRACK_MODIFICATIONS= False
    SQLALCHEMY_DATABASE_URI = 'mysql+pymysql://root:123456@127.0.0.1:3306/aaa'


class sheets(db.Model):
    __tablename__ = "bar01"
    id = db.Column(db.Integer,primary_key=True,autoincrement=True)
    name = db.Column(db.String(64),unique=True)
    age = db.Column(db.Integer())
# 使用app.route装饰器会将URL和执行的视图函数的关系保存到app.url_map属性上。
# 处理URL和视图函数的关系的程序就是路由,这里的视图函数就是index。
@app.route("/")
def index():
    sheets_list = sheets.query.all()
    # 说白了,其实render_template的功能是对先引入index.html,
    # 同时根据后面传入的参数,对html进行修改渲染  --- 处理数据
    return  render_template("bar01.html", sheets=sheets_list)

if __name__ == '__main__':

    db.drop_all()   # 若有表先清除
    db.create_all() # 创建表

    c1 = sheets(name="a",age=18)  # 编写数据
    c2 = sheets(name="b", age=22)


2条回答 默认 最新

相关推荐 更多相似问题