Python下ORM的一个设计举例
来源:互联网 发布:尚观linux视频下载 编辑:程序博客网 时间:2024/05/22 04:58
ORM是对象-关系管理器,是对数据库进行操作的API接口。选择MySQL作为网站的后台数据库;执行SQL语句进行操作,并将常用的SELECT、INSERT等语句进行函数封装;在异步框架的基础上,采用aiomysql作为数据库的异步IO驱动;将数据库中表的操作,映射成一个类的操作,也就是数据库表的一行映射成一个对象(ORM)。整个ORM也是异步操作。
预备知识:Python协程和异步IO(yield from的使用)、SQL数据库操作、元类、面向对象知识、Python语法
思路
如何定义一个user类,这个类和数据库中的表User构成映射关系,二者应该关联起来,user可以操作表User
通过Field类将user类的属性映射到User表的列中,其中每一列的字段又有自己的一些属性,包括数据类型,列名,主键和默认值
python的版本是Python 3.5.2
orm.py
有了ORM,我们就可以把Web App需要的3个表用Model
表示出来:
model.py
初始化数据库表
如果表的数量很少,可以手写创建表的SQL脚本:
schema.sql
如果表的数量很多,可以从Model
对象直接通过脚本自动生成SQL脚本,使用更简单。
把SQL脚本放到MySQL命令行里执行:
$ mysql -u root -p < schema.sql我们就完成了数据库表的初始化。
编写数据访问代码
接下来,就可以真正开始编写代码操作对象了。比如,对于
User
对象,我们就可以做如下操作:#!/usr/bin/env python3mysql_test.py
0 0
- Python下ORM的一个设计举例
- Python下ORM的一个设计举例
- Python下ORM的一个设计举例
- 如何设计一个简单的ORM
- 如何设计一个简单的C++ ORM
- 如何设计一个更好的C++ ORM
- python下的socket常用方法举例
- PHP下的ORM
- python下使用mysql举例
- python的函数举例
- 一个域名解析的举例
- python一个精简的ORM框架(廖老师的python教程)理解
- Python的ORM框架SQLAlchemy
- Python的ORM框架-SQLAlchemy
- peewee 一个轻量级的ORM
- 一个简单的触发器举例
- ViewController的旋转一个举例
- python orm框架sqlalchemy执行更新、删除时遇到的一个bug
- Android UI学习和布局优化
- 网易面试题之给定一个 n 行 m 列的地牢,其中 '.' 表示可以通行的位置,'X' 表示不可通行的障碍,牛牛从 (x0 , y0 ) 位置出发,遍历这个地牢, * 和一般的游戏所不同的是,他每一步
- Linux下使用UDP做心跳检测(断线检测)
- PHP中PSR-[0-4]规范
- SQL Server聚集索引和非聚集索引
- Python下ORM的一个设计举例
- 网易面试题之 牛牛想尝试一些新的料理,每个料理需要一些不同的材料,问完成所有的料理需要准备多少种不同的材料。
- 导入Excel
- 湖南天地图轻松绘分段专题图模块实现简介
- Objective-C常用的函数,常数变量
- data-*属性的使用
- JNI 打log
- linux命令大全——电子邮件与新闻组
- JMeter学习-035-JMeter调试工具之二---Debug PostProcessor