Skip to main content

Peewee support for async frameworks (Asyncio, Trio)

Project description

Peewee-AIO

Async support for Peewee ORM

Features

  • Make Peewee ORM to work async
  • Supports PostgresQL, MySQL, SQLite

Requirements

  • python >= 3.7

Installation

peewee-orm should be installed using pip:

$ pip install peewee-orm

You can install optional database drivers with:

$ pip install peewee-aio[sqlite]
$ pip install peewee-aio[postgresql]
$ pip install peewee-aio[mysql]

Quickstart

    import peewee
    from peewee_aio import Manager

    manager = Manager('sqlite:///:memory:')

    class TestModel(peewee.Model):
        text = peewee.CharField()

    async def handler():

        # Initialize the database
        async with manager:

            # Create the table in database
            await manager.create_tables(TestModel, safe=True)

            # Create a record
            test = await manager.create(TestModel, text="I'm working!")
            assert test
            assert test.id

            # Iterate through records
            async for test in manager.run(TestModel.select()):
                assert test
                assert test.id

            # Drop the table in database
            await manager.drop_tables(TestModel, safe=True)

    # Run the handler with your async library
    import asyncio

    asyncio.run(handler())

Usage

TODO

Bug tracker

If you have any suggestions, bug reports or annoyances please report them to the issue tracker at https://github.com/klen/peewee-aio/issues

Contributing

Development of the project happens at: https://github.com/klen/peewee-aio

License

Licensed under a MIT License

Project details


Release history Release notifications | RSS feed

This version

0.0.0

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

peewee-aio-0.0.0.tar.gz (6.5 kB view hashes)

Uploaded Source

Built Distribution

peewee_aio-0.0.0-py3-none-any.whl (6.7 kB view hashes)

Uploaded Python 3

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