Skip to main content

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


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)

Uploaded Source

Built Distribution

ormic-1.0.0-py3-none-any.whl (7.4 kB view details)

Uploaded Python 3

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

Hashes for ormic-1.0.0.tar.gz
Algorithm Hash digest
SHA256 8f8fb0969fb1a7c81a730dcc4be433bbe4cdd9568e7319e9de674cc357d88c99
MD5 21e7e58af0c3460278621aa95f3ffc29
BLAKE2b-256 6582e6d08c3889ae38cd28e243d552e92ce7a81cb99121fefd4a08027d4f2104

See more details on using hashes here.

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

Hashes for ormic-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 7d94c019419d561785bddfe4d990a7feb39cd770b43d64946bf70e0e34d7d418
MD5 9c0e550d775a38eff098910d74e0bfde
BLAKE2b-256 b759821f9801d941d841509bb8375d5e8e1eb8aab978a7c592d3e67ca05eb724

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page