Python中Flask的基础入门(三)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/sunshunli/article/details/83279054

如果我们想要在flask中用到数据库,那么我们需要配置。

下面我们有mysql为例来配置

首先你的电脑上要有一个mysql数据库,然后才可以。

下面是我们配置的代码

from flask import Flask,render_template
from flask_sqlalchemy import SQLAlchemy
app = Flask(__name__)
app.config['SQLALCHEMY_DATABASE_URI']='mysql+pymysql://root:root@localhost/base'#配置数据库的地址
app.config['SQLALCHEMY_TRACK_MODIFICATIONS']=False#跟踪数据库的修改
db = SQLAlchemy(app)

@app.route('/',methods=['GET','POST'])
def login_html():
    return render_template('login.html')
if __name__ == '__main__':
    app.run(debug=True)

现在我们就已经和数据库连接上了。

app.config['SQLALCHEMY_DATABASE_URI']='mysql+pymysql://root:root@localhost/base'

如果你用的是python3,那么我们要使用pymysql来进行连接

还有要明确一点,你想要连接数据库,首先你要有数据库,这里的数据库是指你已经建立好的数据库,沃恩要做的事在你已经建立好的数据库中建立表。

from flask import Flask
from flask_sqlalchemy import SQLAlchemy
app = Flask(__name__)
# app.config['SQLALCHEMY_DATABASE_URI']='mysql://root:[email protected]/3306'#配置数据库的地址
app.config['SQLALCHEMY_DATABASE_URI']='mysql+pymysql://root:root@localhost/base'
app.config['SQLALCHEMY_COMMIT_ON_TEARDOWN']=True
app.config['SQLALCHEMY_TRACK_MODIFICATIONS']=False#跟踪数据库的修改
db = SQLAlchemy(app)

#数据库模型。需要继承db.Model
class Role(db.Model):
    #定义表名
    _tablename_='role'
    #定义字段
    id = db.Column(db.Integer,primary_key=True)
    name = db.Column(db.String(64),unique=True,nullable=True)
    # users = db.relationship('users', backref='role')

    # def __repr__(self):
    #     return '<Role %s>' % self.name
class User(db.Model):
    # 定义表名
    _tablename_ = 'users'
    # 定义字段
    id = db.Column(db.Integer, primary_key=True)
    name = db.Column(db.String(64), unique=True)
    #ForeignKey表示是外键
    role_id = db.Column(db.Integer, db.ForeignKey('role.id'))
    #
    # def __repr__(self):
    #     return '<User %s>' % self.name
@app.route('/')
def index():
    return 'helloworld'
if __name__ == '__main__':
    #删除表
    db.drop_all()
    #创建表
    db.create_all()
    #数据添加
    role = Role(name='admin')
    db.session.add(role)
    db.session.commit()

    user = User(name='ssl',role_id=role.id)
    db.session.add(user)
    db.session.commit()
    #修改数据
    user.name = 'hxf'
    # #删除数据
    # db.session.delete(user)
    # db.session.commit()

    app.run(debug=True)

上面就是我们往数据库中添加数据,更改数据,删除数据。

猜你喜欢

转载自blog.csdn.net/sunshunli/article/details/83279054
今日推荐