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

This version

0.6.2

Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

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

Uploaded Python 3

File details

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

File metadata

File hashes

Hashes for muffin_peewee-0.6.2-py3-none-any.whl
Algorithm Hash digest
SHA256 a8c2994a574eb27728df9fbb4c61e768a900a1b3a18aacaefaa63f782fad632c
MD5 a651a491bc2d7913d676dad64afda9d7
BLAKE2b-256 80c53027bea8d3c2e39383b9f1a76ed4310b2b8c83215838b086f1cfecbae45f

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