Permalink
..
Failed to load latest commit information.
_pysqlite Refactor SQLite extension, integrate sweepea table-value funcs, etc. Jul 26, 2017
README.md Update playhouse readme. Mar 1, 2018
__init__.py Fiddling around w/extras Jun 29, 2012
_speedups.pyx Improved identifier quoting support to allow open and close quote. May 11, 2018
_sqlite_ext.pyx Better exceptions from TableFunction. May 25, 2018
_sqlite_udf.pyx Adding sqlite user-defined functions and aggregates. Jan 27, 2016
apsw_ext.py bugfix for user-defined aggregate with apsw. May 30, 2018
dataset.py Ensure we load dependencies when updating cache for new models. May 4, 2018
db_url.py First stab at getting blog code updated. Jul 21, 2017
fields.py pymysql workaround. Feb 27, 2018
flask_utils.py Cache page count as attribute. Oct 9, 2017
hybrid.py Add support for 'on conflict' in insert+update, fixes #587 Apr 26, 2015
kv.py Add back a simplified/improved "kv" module to playhouse. Feb 27, 2018
migrate.py Respect field index_type when adding column with migration. May 25, 2018
mysql_ext.py Add support for MySQL-Connector python driver. Mar 30, 2018
pool.py Remove dead code from pool. May 4, 2018
postgres_ext.py Add `field_kwargs` parameter to ArrayField initializer. May 20, 2018
reflection.py Introspect and reflect column default value constraints. Fixes #1553. Apr 2, 2018
shortcuts.py Fix dict_to_model recursive updates. Feb 2, 2018
signals.py Make signal connect/disconnect more robust. Mar 16, 2018
sqlcipher_ext.py Correct spelling mistakes. Jun 3, 2018
sqlite_ext.py Fix bug in updating json blob at a specific path. May 29, 2018
sqlite_udf.py Docs on SQLite UDF. Jan 28, 2018
sqliteq.py Change commit semantics, fix sqliteq Jul 14, 2017
test_utils.py Add test_utils. Oct 11, 2017

README.md

Playhouse

The playhouse namespace contains numerous extensions to Peewee. These include vendor-specific database extensions, high-level abstractions to simplify working with databases, and tools for low-level database operations and introspection.

Vendor extensions

  • SQLite extensions
    • Full-text search (FTS3/4/5)
    • BM25 ranking algorithm implemented as SQLite C extension, backported to FTS4
    • Virtual tables and C extensions
    • Closure tables
    • JSON extension support
    • LSM1 (key/value database) support
    • BLOB API
    • Online backup API
  • APSW extensions: use Peewee with the powerful APSW SQLite driver.
  • SQLCipher: encrypted SQLite databases.
  • SqliteQ: dedicated writer thread for multi-threaded SQLite applications. More info here.
  • Postgresql extensions
    • JSON and JSONB
    • HStore
    • Arrays
    • Server-side cursors
    • Full-text search

High-level libraries

Database management and framework support

  • pwiz: generate model code from a pre-existing database.
  • Schema migrations: modify your schema using high-level APIs. Even supports dropping or renaming columns in SQLite.
  • Connection pool: simple connection pooling.
  • Reflection: low-level, cross-platform database introspection
  • Database URLs: use URLs to connect to database
  • Test utils: helpers for unit-testing Peewee applications.
  • Flask utils: paginated object lists, database connection management, and more.