Metadata-Version: 2.1
Name: mongoengine-dsl
Version: 0.1.3
Summary: DSL to MongoEngine Q.
Home-page: https://github.com/StoneMoe/mongoengine_dsl
License: MIT
Author: Lake Chan
Author-email: lakechan96@gmail.com
Requires-Python: >=3.6.1,<4.0
Classifier: Development Status :: 2 - Pre-Alpha
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Natural Language :: English
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Provides-Extra: dev
Provides-Extra: doc
Provides-Extra: test
Requires-Dist: antlr4-python3-runtime (==4.9.2)
Requires-Dist: black (==20.8b1); extra == "test"
Requires-Dist: flake8 (==3.8.4); extra == "test"
Requires-Dist: flake8-docstrings (>=1.6.0,<2.0.0); extra == "test"
Requires-Dist: isort (==5.6.4); extra == "test"
Requires-Dist: livereload (==2.6.3); extra == "doc"
Requires-Dist: mkdocs (>=1.1.2,<2.0.0); extra == "doc"
Requires-Dist: mkdocs-autorefs (==0.1.1); extra == "doc"
Requires-Dist: mkdocs-include-markdown-plugin (>=3.2.1,<4.0.0); extra == "doc"
Requires-Dist: mkdocs-material (>=6.1.7,<7.0.0); extra == "doc"
Requires-Dist: mkdocs-material-extensions (>=1.0.1,<2.0.0)
Requires-Dist: mkdocstrings (>=0.13.6,<0.14.0); extra == "doc"
Requires-Dist: mongoengine (>=0,<1)
Requires-Dist: mongomock (==3.23.0); extra == "test"
Requires-Dist: pip (>=20.3.1,<21.0.0); extra == "dev"
Requires-Dist: pre-commit (>=2.12.0,<3.0.0); extra == "dev"
Requires-Dist: pytest (==6.1.2); extra == "test"
Requires-Dist: pytest-cov (==2.10.1); extra == "test"
Requires-Dist: toml (>=0.10.2,<0.11.0); extra == "dev"
Requires-Dist: tox (>=3.20.1,<4.0.0); extra == "dev"
Requires-Dist: twine (>=3.3.0,<4.0.0); extra == "dev"
Requires-Dist: virtualenv (>=20.2.2,<21.0.0); extra == "dev"
Description-Content-Type: text/markdown

<!--intro-start-->
<div style="text-align: center;">

![Logo](docs/assets/logo.png)

<a href="https://pypi.python.org/pypi/mongoengine_dsl">
    <img src="https://img.shields.io/pypi/v/mongoengine_dsl.svg" alt="Release Status">
</a>

DSL to MongoEngine Q

</div>

## Features

* Build your mongoengine query from DSL syntax
* Convert your data at build time via transform hook

## Quickstart

Install

```bash
pip install mongoengine_dsl
```

Use

```python
from mongoengine import Document, StringField
from mongoengine_dsl import Query


class User(Document):
    fullname = StringField()


User(fullname="Tom").save()
User(fullname="Dick").save()
User(fullname="Harry").save()

assert User.objects(
    Query("fullname: Dick")
).first().fullname == "Dick"

assert User.objects(
    Query("fullname: dick", transform={
        "fullname": lambda x: x.title()
    })
).first().fullname == "Dick"
```
<!--intro-end-->
## More
Full Documentation: <https://stonemoe.github.io/mongoengine_dsl>

