三 Flask+ MySQL 数据库操作

Posted 刘大飞

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了三 Flask+ MySQL 数据库操作相关的知识,希望对你有一定的参考价值。

一: __init__.py作用:

__init__.py 文件的作用是将文件夹变为一个Python模块,Python 中的每个模块的包中,都有__init__.py 文件。通常__init__.py 文件为空,但是我们还可以为它增加其他的功能。我们在导入一个包时,实际上是导入了它的__init__.py文件这样我们可以在__init__.py文件中批量导入我们所需要的模块,而不再需要一个一个的导入。

  __init__.py:

from flask import Flask, url_for, request, redirect, render_template
from flask_sqlalchemy import SQLAlchemy
app = Flask(__name__)
app.config.from_object(config)      // 加载配置
db = SQLAlchemy(app)                  // 
from app import models,views

models.py

  __tablename__:  表名称。

  __repr__:Python中这个_repr_函数,对应repr(object)这个函数,返回一个可以用来表示对象的可打印字符串. 可以Print出对象

from app import db #db是在app/__init__.py生成的关联后的SQLAlchemy实例

class User(db.Model):
    __tablename__ = users
    id = db.Column(db.Integer, primary_key=True)
    username = db.Column(db.String(80), unique=True)
    email = db.Column(db.String(320), unique=True)
    password = db.Column(db.String(32), nullable=False)

    def __repr__(self):
        return <User %r> % self.username


class Admin(db.Model):
    __tablename__ = admins
    id = db.Column(db.Integer, primary_key=True)
    username = db.Column(db.String(80), unique=True)
    email = db.Column(db.String(320), unique=True)
    password = db.Column(db.String(32), nullable=False)

    def __repr__(self):
        return <User %r> % self.username

create_db.py

create_all: 这个函数会找到tables,然后连接DB,再然后创建表。
from app import db
db.create_all()

用命令行执行python create_db.py;   或者  在pycharm中 直接,右键create_db.py就会创建表。

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////


以上是关于三 Flask+ MySQL 数据库操作的主要内容,如果未能解决你的问题,请参考以下文章

在python3下怎样用flask-sqlalchemy对mysql数据库操作

flask + pymysql操作Mysql数据库

python Flask - 数据库片段

使用Flask-SQLALchemy操作MySQL数据库

Flask中对MySQL的基本操作

在python3下怎样用flask-sqlalchemy对mysql数据库操作