Skip to main content

Enable a limited form of table-valued functions.

Project description

datasette-ersatz-table-valued-functions

PyPI Changelog Tests License

Enable a limited form of table-valued functions.

Installation

Install this plugin in the same environment as Datasette.

datasette install datasette-ersatz-table-valued-functions

Usage

Write a plugin that registers a table-valued function in the startup hook:

from datasette import hookimpl
from datasette_ersatz_table_valued_functions import create_table_function

def tbl_squares(n):
    return [(i, i*i) for i in range(n)]

@hookimpl
def startup():
    create_table_function('tbl_squares', 1, tbl_squares, ['root', 'square'])

You can then query this in Datasette:

SELECT root FROM tbl_squares(10) WHERE square % 2 = 0 AND square < 50

will emit 0, 2, 4, 6.

Development

To set up this plugin locally, first checkout the code. Then create a new virtual environment:

cd datasette-ersatz-table-valued-functions
python3 -m venv venv
source venv/bin/activate

Now install the dependencies and test dependencies:

pip install -e '.[test]'

To run the tests:

pytest

Project details


Download files

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

Source Distribution

Built Distribution

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