A simple, asynchronous python ORM for SQLite databases
Project description
ormic
A simple, asynchronous python ORM for SQLite databases
Installation
# stable
$ pip install ormic
# unstable
$ pip install git+https://github.com/Dorukyum/ormic
Quickstart
from ormic import Database, Model
db = Database()
# create a model
@db.model
class Point(Model):
name: str
x: int
y: int = 5 # default value
# connect to a database
await db.connect("database.db")
Database Actions
# create an object
point = Point(name="A", x=5, y=10)
await point.save()
# fetch objects from the database
point_named_A: Point | None = await Point.fetch(name="A")
list_of_points_named_A: list[Point] | None = await Point.fetch_all(name="A")
# update an object
await point.update(y=15)
# or
point.y = 15
await point.update()
# delete an object
await point.delete()
Caching
# turn caching on
# setting limit to 20 will only cache the last fetched 20 objects
# this parameter defaults to None, caching all fetched objects
database.set_caching(on=True, limit=20)
# get the object from the cache
# will fetch from the database if no matches found
point_named_A = await Point.get_or_fetch(name="A")
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
ormic-1.0.0.tar.gz
(6.1 kB
view details)
Built Distribution
ormic-1.0.0-py3-none-any.whl
(7.4 kB
view details)
File details
Details for the file ormic-1.0.0.tar.gz
.
File metadata
- Download URL: ormic-1.0.0.tar.gz
- Upload date:
- Size: 6.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.10.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8f8fb0969fb1a7c81a730dcc4be433bbe4cdd9568e7319e9de674cc357d88c99 |
|
MD5 | 21e7e58af0c3460278621aa95f3ffc29 |
|
BLAKE2b-256 | 6582e6d08c3889ae38cd28e243d552e92ce7a81cb99121fefd4a08027d4f2104 |
File details
Details for the file ormic-1.0.0-py3-none-any.whl
.
File metadata
- Download URL: ormic-1.0.0-py3-none-any.whl
- Upload date:
- Size: 7.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.10.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7d94c019419d561785bddfe4d990a7feb39cd770b43d64946bf70e0e34d7d418 |
|
MD5 | 9c0e550d775a38eff098910d74e0bfde |
|
BLAKE2b-256 | b759821f9801d941d841509bb8375d5e8e1eb8aab978a7c592d3e67ca05eb724 |