Skip to main content

Peewee integration to Muffin framework

Project description

Muffin Peewee – Peewee ORM integration to Muffin framework.

Build Status http://img.shields.io/pypi/v/muffin-peewee.svg?style=flat-square http://img.shields.io/pypi/dm/muffin-peewee.svg?style=flat-square

Requirements

  • python >= 3.3

Installation

Muffin Peewee should be installed using pip:

pip install muffin-peewee

Usage

Add muffin_peewee to PLUGINS in your Muffin Application configuration.

Or install it manually like this:

db = muffin_peewee.Plugin(**{'options': 'here'})

app = muffin.Application('test')
app.install(db)

Options

PEEWEE_CONNECTION – connection string to your database (sqlite:///db.sqlite)

PEEWEE_CONNECTION_PARAMS – Additional params for connection ({})

PEEWEE_CONNECTION_MANUAL – Doesn’t manage db connections automatically

PEEWEE_MIGRATIONS_ENABLED – enable migrations (True)

PEEWEE_MIGRATIONS_PATH – path to migration folder (migrations)

Queries

@app.ps.peewee.register
class Test(peewee.Model):
    data = peewee.CharField()


@app.register
def view(request):
    return [t.data for t in Test.select()]

Manage connections

# Set configuration option `PEEWEE_CONNECTION_MANUAL` to True

# Use context manager
@app.register
def view(request):
    with (yield from app.ps.peewee.manage()):
        # Work with db
        # ...

Migrations

Create migrations:

$ muffin example:app create [NAME]

Run migrations:

$ muffin example:app migrate [NAME]

Load/Dump data to CSV

Dump table test to CSV file:

$ muffin example:app csv_dump test

Load data from CSV file to table test:

$ muffin example:app csv_load test

Bug tracker

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

Contributing

Development of Muffin Peewee happens at: https://github.com/klen/muffin-peewee

Contributors

  • klen (Kirill Klenov)

License

Licensed under a MIT license.

If you wish to express your appreciation for the project, you are welcome to send a postcard to:

Kirill Klenov
pos. Severny 8-3
MO, Istra, 143500
Russia

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

muffin-peewee-0.5.0.tar.gz (13.1 kB view details)

Uploaded Source

Built Distribution

muffin_peewee-0.5.0-py3-none-any.whl (17.1 kB view details)

Uploaded Python 3

File details

Details for the file muffin-peewee-0.5.0.tar.gz.

File metadata

File hashes

Hashes for muffin-peewee-0.5.0.tar.gz
Algorithm Hash digest
SHA256 6fa81bc9709ce0015dd20c4778720d226da41619cb60e54595af48252fa3bcc4
MD5 5e1739d78f21592026c04318a5c44895
BLAKE2b-256 75db488ffb3072b3c6f82d14f210f8a73e4565de7ce7bc7b1e21982f31ae44ff

See more details on using hashes here.

File details

Details for the file muffin_peewee-0.5.0-py3-none-any.whl.

File metadata

File hashes

Hashes for muffin_peewee-0.5.0-py3-none-any.whl
Algorithm Hash digest
SHA256 952ecfdf6704dc44c6c75a99062fe1243659104d2c18d7b55cb76d8e15a9da5f
MD5 b3fa9bd121eb34a875e59ede79be61b0
BLAKE2b-256 177219121a65a319da6e03ee85843a54fa6f246d84cd0c256ae59564a4780087

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