Async ORM based on PyPika
Project description
PyPika-ORM - ORM for PyPika SQL Query Builder
The package gives you ORM for PyPika with asycio support for a range of databases (SQLite, PostgreSQL, MySQL).
Warning
The project is in early pre-alpha state and not ready for production
Requirements
- python >= 3.7
Installation
pypyka-orm should be installed using pip:
$ pip install pypika-orm
You can install the required database drivers with:
$ pip install pypika-orm[sqlite]
$ pip install pypika-orm[postgresql]
$ pip install pypika-orm[mysql]
Usage
from pypika_orm import Model, fields
class Role(Model):
id = fields.Auto()
name = fields.Varchar(max_length=100, default='user')
class User(Model):
id = fields.Auto()
name = fields.Varchar()
is_active = fields.Bool(default=True, null=False)
role_id = fields.ForeignKey(Role.id)
from pypika_orm import Manager
async with Manager('sqlite:///:memory:') as manager:
await manager(Role).create_table().if_not_exists().execute()
await manager(User).create_table().if_not_exists().execute()
await manager(Role).insert(name='user').execute()
await manager(User).insert(name='jim', role_id=1).execute()
[user] = await manager(User).select().fetchall()
assert user
Bug tracker
If you have any suggestions, bug reports or annoyances please report them to the issue tracker at https://github.com/klen/aio-databases/issues
Contributing
Development of the project happens at: https://github.com/klen/aio-databases
License
Licensed under a MIT License
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file pypika-orm-0.0.9.tar.gz
.
File metadata
- Download URL: pypika-orm-0.0.9.tar.gz
- Upload date:
- Size: 7.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.2 importlib_metadata/4.6.4 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.2 CPython/3.9.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 60be56dd5d6a9a0ccf023328b8f78a636267558e394d6674d5779f83f4a9504e |
|
MD5 | 1e7e456b1f75d5da39b4ad77e8530645 |
|
BLAKE2b-256 | 31845de132934fd285ea3072dd7d9e12361c2130d0de4a6904c495b84179d01e |
File details
Details for the file pypika_orm-0.0.9-py3-none-any.whl
.
File metadata
- Download URL: pypika_orm-0.0.9-py3-none-any.whl
- Upload date:
- Size: 7.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.2 importlib_metadata/4.6.4 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.2 CPython/3.9.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3c0fbda0d8ca4bd85faf1dac3b2caed9822ffa65a40cc2af29c6e8c81cb1fe6b |
|
MD5 | 2984d0618f90cf1e06f232d47b5b0298 |
|
BLAKE2b-256 | 5ecb94152547676303f080d7715a7e1680d509f888f844ba3a913e4d9e88a989 |