Skip to main content

A useful tool to parse the query string parameters on a resource into a MongoDB query object (compatible with PyMongo and MongoEngine).

Project description

PyQS Mongo

A useful tool to parse the query string parameters on a resource into a MongoDB query object (compatible with PyMongo and MongoEngine).

Inspired by: https://github.com/Turistforeningen/node-mongo-querystring

Features (Coming Soon)

  • Aliased query parameters
  • Blacklisted query parameters
  • Whitelisted query parameters
  • Geospatial operators
  • Date comparision
  • Basic operators to support
    • $exists
    • $regex

Features

  • Basic operators
    • $eq
    • $gt
    • $gte
    • $lt
    • $lte
    • $ne
    • $in
    • $nin
operation query string query object
equal ?foo=bar { foo: "bar" }
unequal ?foo=!bar { foo: { $ne: "bar" }}
greater than ?foo=>10 { foo: { $gt: 10 }}
less than ?foo=<10 { foo: { $lt: 10 }}
greater than or equal to ?foo=>=10 { foo: { $gte: 10 }}
less than or equal to ?foo=<=10 { foo: { $lte: 10 }}
in array ?foo=[]bar&foo=[]baz { foo: { $in: ['bar', 'baz'] }}
not in array ?foo=[!]bar&foo=[!]baz { foo: { $nin: ['bar', 'baz'] }}

Install

pip install pyqs-mongo

API

from pyqs_mongo import parse

qs = 'name=ahmed&company=someCompany&age=>=20&age=<=50&username=[]ahmed&username=[]adh&username=[!]some'
query = parse(qs)
print(query)

Tests

  • Coming Soon

Collaborators

  • Ahmed Pyar Ali - @mrpycharm

MIT Licensed

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

pyqs-mongo-0.0.1.tar.gz (4.1 kB view hashes)

Uploaded Source

Built Distribution

pyqs_mongo-0.0.1-py3-none-any.whl (5.4 kB view hashes)

Uploaded Python 3

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