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 相关文章推荐
Python脚本实现集群检测和管理功能
Mar 06 Python
python中私有函数调用方法解密
Apr 29 Python
Python实现控制台中的进度条功能代码
Dec 22 Python
简单实现python聊天程序
Apr 01 Python
浅谈pycharm下找不到sqlalchemy的问题
Dec 03 Python
python实现图片彩色转化为素描
Jan 15 Python
在python里从协程返回一个值的示例
Feb 19 Python
python字符串查找函数的用法详解
Jul 08 Python
python kafka 多线程消费者&手动提交实例
Dec 21 Python
在django项目中导出数据到excel文件并实现下载的功能
Mar 13 Python
Python 中由 yield 实现异步操作
May 04 Python
在python中读取和写入CSV文件详情
Jun 28 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
必须收藏的23个php实用代码片段
2016/02/02 PHP
php+ajax实现异步上传文件或图片功能
2017/07/18 PHP
Laravel 的数据库迁移的方法
2017/07/31 PHP
encode脚本和normal脚本混用的问题与解决方法
2007/03/08 Javascript
JS实现随机化快速排序的实例代码
2013/08/01 Javascript
JavaScript访问CSS属性的几种方式介绍
2014/07/21 Javascript
node.js中实现同步操作的3种实现方法
2014/12/05 Javascript
基于jQuery实现返回顶部实例代码
2016/01/01 Javascript
Angular.js回顾ng-app和ng-model使用技巧
2016/04/26 Javascript
js判断radiobuttonlist的选中值显示/隐藏其它模块的实现方法
2016/08/25 Javascript
JavaScript重定向URL参数的两种方法小结
2016/10/19 Javascript
浅谈js中的变量名和函数名重名
2017/02/13 Javascript
bootstrap table实现单击单元格可编辑功能
2017/03/28 Javascript
Spring shiro + bootstrap + jquery.validate 实现登录、注册功能
2017/06/02 jQuery
JavaScript订单操作小程序完整版
2017/06/23 Javascript
在Vue中使用highCharts绘制3d饼图的方法
2018/02/08 Javascript
Vue中this.$router.push参数获取方法
2018/02/27 Javascript
详解javascript中的babel到底是什么
2018/06/21 Javascript
jQuery中ajax请求后台返回json数据并渲染HTML的方法
2018/08/08 jQuery
jQuery实现的点击图片居中放大缩小功能示例
2019/01/16 jQuery
详解VUE Element-UI多级菜单动态渲染的组件
2019/04/25 Javascript
vue组件是如何解析及渲染的?
2021/01/13 Vue.js
[59:48]LGD vs IG 2018国际邀请赛小组赛BO2 第一场 8.18
2018/08/19 DOTA
python网络编程学习笔记(八):XML生成与解析(DOM、ElementTree)
2014/06/09 Python
Python正则表达式教程之三:贪婪/非贪婪特性
2017/03/02 Python
Python对象类型及其运算方法(详解)
2017/07/05 Python
css3动画过渡实现鼠标跟随导航效果
2018/02/08 HTML / CSS
企业演讲稿范文
2013/12/28 职场文书
结婚邀请函范文
2014/01/14 职场文书
一年级学生评语
2014/04/23 职场文书
政府绩效管理实施方案
2014/05/04 职场文书
校外活动方案
2014/08/28 职场文书
2014政府领导班子对照检查材料思想汇报(3篇)
2014/09/26 职场文书
公务员群众路线心得体会
2014/11/03 职场文书
三方合作意向书范本
2015/05/09 职场文书
Pytest allure 命令行参数的使用
2021/04/18 Python