{ "info": { "author": "Marc-Aurele Coste", "author_email": "", "bugtrack_url": null, "classifiers": [ "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3 :: Only", "Topic :: Software Development :: Libraries :: Python Modules" ], "description": "# Sqla-filters\n\n![license](https://img.shields.io/pypi/l/sqla-filters.svg)\n![wheel](https://img.shields.io/pypi/wheel/sqla-filters.svg)\n![pyversions](https://img.shields.io/pypi/pyversions/sqla-filters.svg)\n\n## Introduction \n\nThe purpose of this project is to set the basic class so that you can create a tree that will be then used to filter a request made with the SQLAlchemy ORM.\n\nCurrently, the elements provided are as Follows:\n- the nodes (see: the table Below)\n- the class SqlaFilterTree which contains the tree and allows to print it.\n- the class BaseSqlaParser which serves as the basis if you create a parser that allows generating a tree.\n\nThis project is also for me a way to experience the namespace packages.\n\n## Installation\n\n```bash\npip install sqla-filters\n```\n\n## Operators\n\nThe following operators are or will be implemented:\n\n| support | operators | name | code |\n|:-------:|:----------|:---------------------:|-------------------:|\n| [x] | like | like | like() |\n| [x] | eq | equal | operators.eq |\n| [x] | not_eq | not equal | operators.ne |\n| [x] | null | null | is None |\n| [x] | not_null | not null | is not None |\n| [x] | gt | greater than | operators.gt |\n| [x] | gte | greater than or equal | operators.ge |\n| [x] | lt | lower than | operators.lt |\n| [x] | lte | lower than or equal | operators.le |\n| [x] | in | in | in_() |\n| [x] | not_in | not in | ~.in_() |\n| [x] | contains | contains | operators.contains |\n\n\n## Tree\n\nThis is an example of what a tree looks like.\n\n```\n +----------------------+\n | |\n | and |\n | |\n -----------------------+\n ||\n ||\n ||\n +----------------------+ || +----------------------+\n | | || | |\n | or <------------> age == 21 |\n | | | |\n +----------------------+ +----------------------+\n ||\n ||\n ||\n+----------------------+ || +----------------------+\n| | || | |\n| name == toto <----------------> name == tata |\n| | | |\n+----------------------+ +----------------------+\n```\n\n## Contribute\n\nYou can contribute to the project using different ways.\n\n### 1 | Classical\n\nFork the repository and run the following command to install the dependencies and the dev dependencies.\n\n`pip install -e '.[dev]'`\n\nPipenv `Pipefile` is also available if needed.\n\n### 2 | Using namespace features\n\nIf you want to contribute using the namespace features it's really simple.\nFirst create your own project and use the following directories structure.\n\n ProjectFolder\n |______src\n |______sqla_filters\n |______parser\n\nThis is an example to create new parser.\n\nYou can find example with the following repositories:\n\n- [sqla-filters-json](https://github.com/MarcAureleCoste/sqla-filters-json)\n- [sqla-filters-yaml](https://github.com/MarcAureleCoste/sqla-filters-yaml)\n\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/MarcAureleCoste/sqla-filters", "keywords": "", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "sqla-filters", "package_url": "https://pypi.org/project/sqla-filters/", "platform": "", "project_url": "https://pypi.org/project/sqla-filters/", "project_urls": { "Homepage": "https://github.com/MarcAureleCoste/sqla-filters" }, "release_url": "https://pypi.org/project/sqla-filters/0.0.2/", "requires_dist": [ "SQLAlchemy (==1.2.10)", "pylint; extra == 'dev'", "pep8; extra == 'dev'", "autopep8; extra == 'dev'", "ipython; extra == 'dev'", "mypy; extra == 'dev'", "pytest; extra == 'dev'", "rope; extra == 'dev'", "sphinx; extra == 'dev'" ], "requires_python": "", "summary": "Library to help developers to create filter for the sqlachemy orm.", "version": "0.0.2" }, "last_serial": 4345126, "releases": { "0.0.1": [ { "comment_text": "", "digests": { "md5": "9e8d6772051e3f14cb4acf97e952e987", "sha256": "507822568b7d2c71f7faaea6988f1263c6c03a6ed63313fa8dff0a73b103b0ef" }, "downloads": -1, "filename": "sqla_filters-0.0.1-py3-none-any.whl", "has_sig": false, "md5_digest": "9e8d6772051e3f14cb4acf97e952e987", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 12685, "upload_time": "2018-08-31T14:51:01", "url": "https://files.pythonhosted.org/packages/68/b4/72d02f3ad21a24a8fbf3fe51d16847ff505806dbbdfc1506e10c06fbf926/sqla_filters-0.0.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "01623cddc5a55b6e02767aefa13d31f9", "sha256": "aef321e080a0d09c6f798210a09fd51088121b6afc8dee9d824ab6ba74264715" }, "downloads": -1, "filename": "sqla-filters-0.0.1.tar.gz", "has_sig": false, "md5_digest": "01623cddc5a55b6e02767aefa13d31f9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10861, "upload_time": "2018-08-31T14:51:02", "url": "https://files.pythonhosted.org/packages/43/81/6802becd43698ce37ad54396479d7214e7c1dd819148390ed03cff011cf7/sqla-filters-0.0.1.tar.gz" } ], "0.0.2": [ { "comment_text": "", "digests": { "md5": "071ca4ae38f74b4804fbad1cd57b1b23", "sha256": "cf49535b8a46a5ab8cf364984c437c136e788c48d112668c7a52f360b828f26a" }, "downloads": -1, "filename": "sqla_filters-0.0.2-py3-none-any.whl", "has_sig": false, "md5_digest": "071ca4ae38f74b4804fbad1cd57b1b23", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 9124, "upload_time": "2018-10-05T17:19:54", "url": "https://files.pythonhosted.org/packages/15/ba/dde7cadf267add75f765633737fb5b3976744433733231450b2203dfe1b0/sqla_filters-0.0.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "c79d36d8f066e2f77560fcb8bb1d23b4", "sha256": "1a2632c556569ad4978fc676b28c942ec36cbbedae93d8532411927db1a94336" }, "downloads": -1, "filename": "sqla-filters-0.0.2.tar.gz", "has_sig": false, "md5_digest": "c79d36d8f066e2f77560fcb8bb1d23b4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8148, "upload_time": "2018-10-05T17:19:55", "url": "https://files.pythonhosted.org/packages/d8/03/3862382c5ffe9bff33ae5b561dc6b16288785237e215e852d279dbd4fe4f/sqla-filters-0.0.2.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "071ca4ae38f74b4804fbad1cd57b1b23", "sha256": "cf49535b8a46a5ab8cf364984c437c136e788c48d112668c7a52f360b828f26a" }, "downloads": -1, "filename": "sqla_filters-0.0.2-py3-none-any.whl", "has_sig": false, "md5_digest": "071ca4ae38f74b4804fbad1cd57b1b23", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 9124, "upload_time": "2018-10-05T17:19:54", "url": "https://files.pythonhosted.org/packages/15/ba/dde7cadf267add75f765633737fb5b3976744433733231450b2203dfe1b0/sqla_filters-0.0.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "c79d36d8f066e2f77560fcb8bb1d23b4", "sha256": "1a2632c556569ad4978fc676b28c942ec36cbbedae93d8532411927db1a94336" }, "downloads": -1, "filename": "sqla-filters-0.0.2.tar.gz", "has_sig": false, "md5_digest": "c79d36d8f066e2f77560fcb8bb1d23b4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8148, "upload_time": "2018-10-05T17:19:55", "url": "https://files.pythonhosted.org/packages/d8/03/3862382c5ffe9bff33ae5b561dc6b16288785237e215e852d279dbd4fe4f/sqla-filters-0.0.2.tar.gz" } ] }