🚀 Socket Launch Week 🚀 Day 2: Introducing Repository Labels and Security Policies.Learn More
Socket
Sign inDemoInstall
Socket

estoult

Package Overview
Dependencies
Maintainers
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

estoult

Data mapper and query builder for SQL databases.

0.8.0
PyPI
Maintainers
1

la black luna

Estoult

PyPI PyPI - License PyPI - Python Version Documentation Status

Estoult (pronounced es-too) is a Python toolkit for data mapping with an integrated query builder for SQL databases. It currently supports MySQL, PostgreSQL, and SQLite.

Features:

  • Not an ORM. Estoult doesn't attempt to apply relational algebra to objects.
  • Concise and composable (sub)queries.
  • Easy debugging by displaying any generated SQL in a readable format.
  • Fast. Estoult is NOT an ORM.

Estoult only works with Python 3.9+.

Installation

Install Estoult through pip:

pip install estoult

# or with a specific database driver (postgres or mysql)
pip install estoult[postgres]

Quick Example

from estoult import Schema, Field, Query, SQLiteDatabase

db = SQLiteDatabase("example.db")

class User(db.Schema):
    __tablename__ = "User"
    id = Field(int, primary_key=True)
    name = Field(str)
    age = Field(int)

# Insert a user
user = User.insert({"name": "Artoria", "age": 35})

# Query users
users = (
    Query(User)
    .select()
    .where(User.age > 21)
    .execute()
)

# Update user
User.update({"id": user["id"]}, {"age": 36})

Documentation

Check the documentation for help and getting started.

Contributing

If you have found a bug or would like to see a feature added to Estoult, please submit an issue or a pull request! Likewise if you found something in the documentation unclear or imprecise.

Tests

Tests are run with pytest. Install it using pip:

pip install pytest

Run tests from the shell:

pytest

License

Estoult is licensed under the MIT license (see LICENSE file).

FAQs

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts