Gino不是ORM——一个基于SqlAlchemy核心的Python异步ORM。

gino的Python项目详细描述


基诺

https://img.shields.io/pypi/v/gino.svghttps://img.shields.io/travis/fantix/gino/master.svghttps://img.shields.io/coveralls/github/fantix/gino/master.svgdocumentation statusupdatesgitter chat

gino-gino不是orm-是在 sqlalchemy python的核心 异步 。现在(2018年初)Gino只支持一个 方言

  • 免费软件:BSD许可证
  • 需要:python 3.5

功能

  • 健壮的SqlAlchemy AsyncPg BI转换器,无需硬破解
  • 异步sqlalchemy相似引擎和连接
  • 异步方言API
  • 异步友好CRUD目标模型
  • 深思熟虑的上下文连接和事务管理
  • 重用本机sqlalchemy核心构建带有语法糖的查询
  • 支持sanic、tornado web.org/" rel="nofollow">tornado、 tornado aiohttp 夸脱
  • 丰富的PostgreSQL JSONB支持

安装

pip install gino

展示

importasynciofromginoimportGinodb=Gino()classUser(db.Model):__tablename__='users'id=db.Column(db.Integer(),primary_key=True)nickname=db.Column(db.Unicode(),default='noname')asyncdefmain():awaitdb.set_bind('postgresql://localhost/gino')# Create tablesawaitdb.gino.create_all()# Create object, `id` is assigned by databaseu1=awaitUser.create(nickname='fantix')print(u1.id,u1.nickname)# 1 fantix# Returns all user objects with "d" in their nicknamesusers=awaitUser.query.where(User.nickname.contains('d')).gino.all()print(users)# [<User object>, <User object>]# Find one user object, None if not founduser=awaitUser.query.where(User.nickname=='daisy').gino.first()print(user)# <User object> or None# Execute complex statement and return command statusstatus,result=awaitUser.update.values(nickname='No.'+db.cast(User.id,db.Unicode),).where(User.id>10,).gino.status()print(status)# UPDATE 8# Iterate over the results of a large query in a transaction as requiredasyncwithdb.transaction():asyncforuinUser.query.order_by(User.id).gino.iterate():print(u.id,u.nickname)asyncio.get_event_loop().run_until_complete(main())

使用Gino的项目

学分

信用证归作者文件中列出或未列出的所有贡献者所有。这个 项目的灵感来源于异步pgsa、peewee async和异步格式。 asyncpg sqlalchemy 依赖项完成了大部分繁重工作。这个包裹是 使用Cookiecutter和项目创建 模板。

特别感谢我的妻子戴西和她的外包公司。 为我提供了建设这个项目的机会。我们向全球开放 python、ios和android开发的软件项目外包。我们是 招聘

Gino是通过 pycharm

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何将字符串转换为自定义对象   java如何从socket方法获取数据?   Java中的soap读取回车和新行   java在单击时替换图像   java推荐的使用RXJava执行异步任务的方法   java MySql连接器JDBC驱动程序不支持连接池吗?   java将活动堆栈清理到顶部   java计数用户输入的数量   java从webservice下载大文件导致应用程序性能问题   JavaLocalDate。EPOCH不可用   java如何在使用Selenium等待一定时间后,在页面无法加载(get(url))时自动刷新页面   java Calendar setLenient方法不允许检查年份字段的健全性   java Eclipse和intelliJ 安卓 SDK问题   java为什么我可以在没有super关键字的情况下调用父方法?   java iText的PDF格式不好