07-flask-使用sqlalchemy
Posted 萌新瑟瑟发抖
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了07-flask-使用sqlalchemy相关的知识,希望对你有一定的参考价值。
代码
from flask import Flask, render_template
from sqlalchemy import create_engine
from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy import Column, String, Integer
from sqlalchemy.orm import sessionmaker
app = Flask(__name__)
# 链接是需要指定要用到的mysql数据库
engine = create_engine(‘mysql+pymysql://root:123456@localhost:3306/flask_1?charset=utf8‘) # mysql+pymysql://mysql账号:mysql密码@mysqlIP:mysql端口/数据库?charset=编码格式
Base = declarative_base() # 生成SQLORM基类
class User(Base):
# 对应MySQL中数据表的名字
__tablename__ = ‘user‘
# 创建字段
id = Column(Integer, primary_key=True)
user_id = Column(String(50), nullable=False)
user_name = Column(String(50), nullable=False)
head_img = Column(String(200))
short_description = Column(String(300))
@app.route("/profile_v8/<user_id>")
def profile_v8(user_id):
# 1. 查询数据库
# 创建session对象
DBSession = sessionmaker(bind=engine) # 创建与数据库的会话,返回的是一个类
session = DBSession() # 生成链接数据库的实例
# 获取返回数据的第一行
obj = session.query(User).filter(User.user_id == user_id).one() # session.query(表名)filter(条件)
# 关闭session
session.close()
# 2. 模板渲染
return render_template("profile.html", user_name=obj.user_name, head_img=obj.head_img, short_description=obj.short_description)
if __name__ == ‘__main__‘:
app.run()
以上是关于07-flask-使用sqlalchemy的主要内容,如果未能解决你的问题,请参考以下文章
使用sqlacodegen自动生成sqlalchemy的model代码
从 python 使用 TSQL(SQL Server 上的 mssql)时,如何为 SQLAlchemy 自动生成 ORM 代码?