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 18 Python
python实现的正则表达式功能入门教程【经典】
Jun 05 Python
python获取酷狗音乐top500的下载地址 MP3格式
Apr 17 Python
Django2.1集成xadmin管理后台所遇到的错误集锦(填坑)
Dec 20 Python
对python中list的拷贝与numpy的array的拷贝详解
Jan 29 Python
Python利用heapq实现一个优先级队列的方法
Feb 03 Python
实例讲解Python中整数的最大值输出
Mar 17 Python
我喜欢你 抖音表白程序python版
Apr 07 Python
pytorch进行上采样的种类实例
Feb 18 Python
Python多线程正确用法实例解析
May 30 Python
pytorch 实现在测试的时候启用dropout
May 27 Python
Python echarts实现数据可视化实例详解
Mar 03 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
dedecms中常见问题修改方法总结
2007/03/21 PHP
Notice: Trying to get property of non-object problem(PHP)解决办法
2012/03/11 PHP
php实现的支持断点续传的文件下载类
2014/09/23 PHP
php ImageMagick windows下安装教程
2015/01/26 PHP
PHP图像处理类库MagickWand用法实例分析
2015/05/21 PHP
帝国CMS留言板回复后发送EMAIL通知客户
2015/07/06 PHP
php实现批量修改文件名称的方法
2016/07/23 PHP
PHP实现redis限制单ip、单用户的访问次数功能示例
2018/06/16 PHP
Javascript 遮罩层和加载效果代码
2013/08/01 Javascript
JavaScript中的this到底是什么(一)
2015/12/09 Javascript
JavaScript中eval()函数用法详解
2015/12/14 Javascript
JS实用技巧小结(屏蔽错误、div滚动条设置、背景图片位置等)
2016/06/16 Javascript
jQuery Mobile和HTML5开发App推广注册页
2016/11/07 Javascript
用JavaScript实现让浏览器停止载入页面的方法
2017/01/19 Javascript
jQuery EasyUI之验证框validatebox实例详解
2017/04/10 jQuery
浅谈JS 数字和字符串之间相互转化的纠纷
2017/10/20 Javascript
ES6数组与对象的解构赋值详解
2019/06/14 Javascript
Javascript var变量删除原理及实现
2020/08/26 Javascript
vue select 获取value和lable操作
2020/08/28 Javascript
vue 动态添加的路由页面刷新时失效的原因及解决方案
2021/02/26 Vue.js
[03:43]TI9战队采访——PSG.LGD
2019/08/22 DOTA
Python实现的检测web服务器健康状况的小程序
2014/09/17 Python
python实现统计代码行数的方法
2015/05/22 Python
Python实现查找二叉搜索树第k大的节点功能示例
2019/01/24 Python
python 判断矩阵中每行非零个数的方法
2019/01/26 Python
Python数据类型之List列表实例详解
2019/05/08 Python
python可视化篇之流式数据监控的实现
2019/08/07 Python
Html5页面获取微信公众号的openid的方法
2020/05/12 HTML / CSS
马德里竞技官方网上商店:Atletico Madrid Shop
2019/03/31 全球购物
实习生单位鉴定意见
2013/12/04 职场文书
竞选演讲稿范文大全
2014/05/12 职场文书
试用期转正员工自我评价
2014/09/18 职场文书
丧事主持词
2015/07/02 职场文书
2016大学生就业指导课心得体会
2016/01/15 职场文书
Python数据类型最全知识总结
2021/05/31 Python
Python FuzzyWuzzy实现模糊匹配
2022/04/28 Python