flask_sqlalchemy ORM Models模型文件和数据表的生成

flask_sqlalchemy ORM Models模型文件和数据表的生成

python实例qingyu2022-11-11 17:06:09103A+A-

  flask_sqlalchemy  ORM Models模型文件和数据表的生成

  1、ORM 模型文件最好不要写在app.py里的。

  较为合理的做法是在根目录新建models.py专门存放ORM模型

  本例 models.py 代码如下:

# coding: utf-8
from flask_sqlalchemy import SQLAlchemy
db = SQLAlchemy()
class User(db.Model):
    __tablename__ = 'user'
    id = db.Column(db.Integer, primary_key=True)
    uname = db.Column(db.String(50), nullable=False)
    upwd = db.Column(db.String(32), nullable=False)
    uqx = db.Column(db.Integer, default=0)  # 0 用户 1管理员
    ustate = db.Column(db.Integer, default=1)  # 0 正常状态 0管理员禁言

  2. 主文件 app.py  代码如下:

import random
from flask import Flask, render_template
from models import db,User
import conf
import nicheng

app = Flask(__name__)
app.config.from_object(conf.Config)
# 数据库初始化
db.init_app(app)

#user = User(uname='admin',upwd='123',uqx=1, ustate=1)
with app.app_context():
    db.create_all()
@app.route('/')
def index():
    return render_template('index.html')

@app.route('/fabu')
def fabu():
    niname = random.choice(nicheng.nclist)
    return render_template('shudong.html', niname=niname)

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

  3.生成数据表的命令是:

with app.app_context(): #上下文环境处理
    db.create_all()

  4.在生成数据表之前,必须连接数据库

  数据库配置文件如下:

"""配置文件"""
import os.path

class Config(object):
    """项目配置文件"""
    # 数据库连接URI
    SQLALCHEMY_DATABASE_URI = 'mysql://root:root@localhost/py03_xuyuan'
    SQLALCHEMY_TRACK_MODIFICATIONS =True
    # flash,form wft
    SECRET_KEY = 'ssfy33452232345fd'
    # 文件上传的根路径
    MEDIA_ROOT = os.path.join(os.path.dirname(__file__), 'medias')
点击这里复制本文地址 欢迎来到大黄鸡源码分享网
qrcode

大黄鸡源码编程网 © All Rights Reserved.  
网站备案号:闽ICP备18012015号-4
Powered by Z-BlogPHP
联系我们| 关于我们| 广告联系| 网站管理