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.1

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

Uploaded Source

Built Distribution

muffin_peewee-0.6.1-py3-none-any.whl (17.2 kB view details)

Uploaded Python 3

File details

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

File metadata

File hashes

Hashes for muffin-peewee-0.6.1.tar.gz
Algorithm Hash digest
SHA256 5d7b6fd3dab8cf740c781ca6139628fc71da0e89441bb638d7487886149b7185
MD5 fc764ce073bae51aacd9656dd3a3666c
BLAKE2b-256 38f4842c93ff126195b4c36c88884f911bca49af34da7d2c7feb6be1eda42e32

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for muffin_peewee-0.6.1-py3-none-any.whl
Algorithm Hash digest
SHA256 9677bd173316fc7662dd6c00349b8284f6adce0e7a7e752cfda2c62d5eb925cb
MD5 2cc04161299b13636693ea72920639ce
BLAKE2b-256 d1957479935523f3840137cd4c3218ed97dc475f201a6161183297a2e84ae322

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