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.6.0.tar.gz (13.2 kB view details)

Uploaded Source

Built Distribution

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

Uploaded Python 3

File details

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

File metadata

File hashes

Hashes for muffin-peewee-0.6.0.tar.gz
Algorithm Hash digest
SHA256 e9750968416b5078764d2fe3f73c27c0429c44d25781253d7c7f25d9920a9ba9
MD5 859115d4cdd1702a496ccec3c82a4088
BLAKE2b-256 5e6811fbaa3c6fa4df4f56f3ea787e850003a21fd8750e0955d741d95a1cf141

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for muffin_peewee-0.6.0-py3-none-any.whl
Algorithm Hash digest
SHA256 873712778ce110ae76c364d863d0154d9da1abfa935731ed29271e639b6ecadc
MD5 3fa435f7aebbb55492171655543acc14
BLAKE2b-256 4ff60cd063515e40ca4ba51b429ed253b29b5b9e1426f1d4fd0a0181a9605824

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