flask框架使用orm连接数据库的方法示例


Posted in Python onJuly 16, 2018

本文实例讲述了flask框架使用orm连接数据库的方法。分享给大家供大家参考,具体如下:

注:使用前请安装flask_sqlalchemy包,由于python-mysql不适用于python3.6,所以我们使用pymysql进行替代

1. flask的app文件中输入以下代码

(文件名为:learn_flask_mysql_orm.py)

from flask import Flask
from flask_sqlalchemy import SQLAlchemy
app = Flask(__name__)
app.config["SQLALCHEMY_DATABASE_URI"]="mysql+pymysql://root:@127.0.0.1:3306/learn_flask_mysql"
#注:请勿忘记添加'+pymysql',否则将会出现没有安装mysqldb的报错
db = SQLAlchemy(app)
@app.route('/')
def hello_world():
  return 'Hello World!'
if __name__ == '__main__':
  app.run()

2. 在flask文件夹中新建一个models.py文件,并输入以下代码

from learn_flask_mysql_orm import db
class User(db.Model):
  __tablename__ = 'user'
  user_id = db.Column(db.INT,primary_key=True)
  user_name = db.Column(db.TEXT)
  def __init__(self,user_id,user_name):
    self.user_id = user_id
    self.user_name = user_name
  def __str__(self):
    return "id:{}  name:{}".format(self.user_id,self.user_name)

3. 在flask中新建一个manage.py文件,输入以下代码

from flask_script import Manager
from models import User
from learn_flask_mysql_orm import app,db
manager = Manager(app)
@manager.command
def save():
  user = User(11,'zhangjia11')
  db.session.add(user)
  db.session.commit()
@manager.command
def query_all():
  users = User.query.all()
  for user in users:
    print(user)
if __name__ == "__main__":
  manager.run()

之后使用python manage.py save即可保存数据,使用python manage.py qurey_all即可查询数据

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
把MySQL表结构映射为Python中的对象的教程
Apr 07 Python
Python进阶学习之特殊方法实例详析
Dec 01 Python
python将txt等文件中的数据读为numpy数组的方法
Dec 22 Python
Python第三方库face_recognition在windows上的安装过程
May 03 Python
详解Python 调用C# dll库最简方法
Jun 20 Python
Python 类的私有属性和私有方法实例分析
Sep 29 Python
Python pickle模块实现对象序列化
Nov 22 Python
python多线程实现代码(模拟银行服务操作流程)
Jan 13 Python
Python-openCV读RGB通道图实例
Jan 17 Python
简单的Python人脸识别系统
Jul 14 Python
Selenium及python实现滚动操作多种方法
Jul 21 Python
Python钉钉报警及Zabbix集成钉钉报警的示例代码
Aug 17 Python
flask框架实现连接sqlite3数据库的方法分析
Jul 16 #Python
Sanic框架异常处理与中间件操作实例分析
Jul 16 #Python
对pycharm代码整体左移和右移缩进快捷键的介绍
Jul 16 #Python
对Python3.6 IDLE常用快捷键介绍
Jul 16 #Python
Sanic框架请求与响应实例分析
Jul 16 #Python
解决Python 中英文混输格式对齐的问题
Jul 16 #Python
Django实战之用户认证(用户登录与注销)
Jul 16 #Python
You might like
PHP开发文件系统实例讲解
2006/10/09 PHP
PHP数组排序函数合集 以及它们之间的联系分析
2013/06/27 PHP
详解 PHP加密解密字符串函数附源码下载
2015/12/18 PHP
jquery在ie7下选择器的问题导致append失效的解决方法
2016/01/10 Javascript
基于jQuery实现淡入淡出效果轮播图
2020/07/31 Javascript
JavaScript Base64 作为文件上传的实例代码解析
2017/02/14 Javascript
从零学习node.js之mysql数据库的操作(五)
2017/02/24 Javascript
深入理解AngularJs-scope的脏检查(一)
2017/06/19 Javascript
jQuery UI Draggable + Sortable 结合使用(实例讲解)
2017/09/07 jQuery
nodejs实现简单的gulp打包
2017/12/21 NodeJs
微信小程序tabBar 返回tabBar不刷新页面
2019/07/25 Javascript
Vue组件通信入门之Provide和Inject机制
2019/12/29 Javascript
Vue项目移动端滚动穿透问题的实现
2020/05/19 Javascript
[02:28]DOTA2 2015国际邀请赛中国区预选赛首日现场百态
2015/05/26 DOTA
Numpy数组的保存与读取方法
2018/04/04 Python
浅析Python语言自带的数据结构有哪些
2019/08/27 Python
Python学习工具jupyter notebook安装及用法解析
2020/10/23 Python
伦敦著名的运动鞋综合商店:Footpatrol
2019/03/25 全球购物
什么是反射
2012/03/17 面试题
升职自荐信
2013/11/28 职场文书
2014年教师培训的自我评价
2014/01/03 职场文书
学生宿舍管理制度
2014/01/30 职场文书
《哪吒闹海》教学反思
2014/02/28 职场文书
预备党员转正考核材料
2014/06/03 职场文书
房屋产权共有协议书范本
2014/11/03 职场文书
合理化建议书
2015/02/04 职场文书
庆祝教师节新闻稿
2015/07/17 职场文书
2015初中教导处工作总结
2015/07/21 职场文书
小组口号霸气押韵
2015/12/24 职场文书
终止合同协议书范本
2016/03/22 职场文书
导游词之无锡东林书院
2019/12/11 职场文书
解决go在函数退出后子协程的退出问题
2021/04/30 Golang
超详细教你怎么升级Mysql的版本
2021/05/19 MySQL
深入理解go slice结构
2021/09/15 Golang
十大最强格斗系宝可梦,超梦X仅排第十,第二最重格斗礼仪
2022/03/18 日漫
vue使用refs获取嵌套组件中的值过程
2022/03/31 Vue.js