Flask实现个人博客(二)--数据模型

中文教程

我在此用的是mysql数据库 为了数据库更好的维护和迁移要引入4个包

flask-script、flask-migrate、pymysql、flask_sqlalchemy

在自己的虚拟环境下 pip install flask-script、pip install flask-migrate 、pip install mysql

由于是个人博客就就先不设计外键关系了,后期扩展有可能加

在mysql下创建一个名叫myblogt的数据库

为了解决循环引用问题在blog目录下创建了一个exts.py 用于定义db对象

from flask_sqlalchemyimport SQLAlchemy

db = SQLAlchemy()

在__init__.py中添加db的初始化app

from blog.exts import db

db.init_app(app)

在models.py下创建User类和Aticle类 不知怎么粘过来就没有缩进了 凑合看吧

from blog.extsimport db

class User(db.Model):

__tablename__ ='b_user'

    id = db.Column(db.Integer,primary_key=True)

username = db.Column(db.String(32))

password = db.Column(db.String(50))

class Aticle(db.Model):

__tablename__ ='b_aticle'

    id = db.Column(db.Integer,primary_key=True)

title = db.Column(db.String(100))

content = db.Column(db.String(500))


在__init__.py中导入添加模型

from blog.models import User,Aticle

配置数据库的连接文件 放到根目录下 config.py 

import os

SECRET_KEY = os.urandom(24)

SQLALCHEMY_DATABASE_URI ='mysql+pymysql://用户名:密码@localhost:3306/myblogt?charset=utf8'

SQLALCHEMY_TRACK_MODIFICATIONS =False


新建一个manager.py文件内容


激活虚拟换件切换到当前的manage.py下

输入 python manager.py db init  用于初始化 创建部分包

python manager.py db migrate 用于生成迁移文件

python manager.py db upgrade 用于生成数据库表

此时来到我们的数据库看一下就有了两个表


你可能感兴趣的:(Flask实现个人博客(二)--数据模型)