Skip to main content

A python port of the NPM Bodybuilder Package

Project description

bodybuilder

An (almost!) drop in replacement in python of the Elasticsearch Bodybuilder Package on NPM

The API has been designed to be as close to the original package.

Also, you can use https://bodybuilder.js.org/ to test your constructions with minor changes described below:

Variations

  • from -> from_ because from is a python keyword
  • need \ new-line indicator for multi line incantations in python which is not necessary in JS
  • individual Filter/Query/Aggregations classes not implemented (shouldn't affect user)
  • lambda functions instead of anonymous functions (Duh!)

Installation

Install from source

  1. Clone package locally
  2. Go to the root directory
  3. python3 setup.py install

Usage

from bodybuilder.builder import BodyBuilder as bodyBuilder
bodyBuilder().query("a", "b", "c").build()
{'query': {'a': {'b': 'c'}}}

Not Implemented

To be implemented

  • minimum_should_match query and filter
  • aggregation metadata

No plans to implement

  • Complicated multi sort
  • clone method (users can use copy.deepcopy() if required)
  • orQuery, andQuery, notQuery which has been deprecated n favor of bool method

Credits

Thanks to Danpaz and contributors of the original package for the original package from which I have liberally copied (with his permission!)

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

bodybuilder-0.1.0.tar.gz (6.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

bodybuilder-0.1.0-py3-none-any.whl (7.8 kB view details)

Uploaded Python 3

File details

Details for the file bodybuilder-0.1.0.tar.gz.

File metadata

  • Download URL: bodybuilder-0.1.0.tar.gz
  • Upload date:
  • Size: 6.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/46.1.3 requests-toolbelt/0.8.0 tqdm/4.43.0 CPython/3.7.6

File hashes

Hashes for bodybuilder-0.1.0.tar.gz
Algorithm Hash digest
SHA256 af6d3bea4d754648b790fc9074694edc7affc9a00778a2722dffc7a7bd7d5077
MD5 5b27da208d2eddf5581998f7b4525013
BLAKE2b-256 36ec25c4a1fc625da22ebd4a2632b6766a41fd2e71b3f12b386e72885c16e5a9

See more details on using hashes here.

File details

Details for the file bodybuilder-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: bodybuilder-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 7.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/46.1.3 requests-toolbelt/0.8.0 tqdm/4.43.0 CPython/3.7.6

File hashes

Hashes for bodybuilder-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 84a8e6b67c33e9bef732fa0e9fb1b7bf734826cb6dbf5c36f5bb6db4cac96932
MD5 f1feecd216978a66523a46773f144176
BLAKE2b-256 bc14432048d4ed0ccbb295ed1d34528774197d55c0b21f1e80b83a47b581d029

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page