{ "info": { "author": "Artur Barseghyhan", "author_email": "artur.barseghyan@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Environment :: Web Environment", "Framework :: Django", "Intended Audience :: Developers", "License :: OSI Approved :: GNU General Public License v2 (GPLv2)", "License :: OSI Approved :: GNU Lesser General Public License v2 or later (LGPLv2+)", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6" ], "description": "=========================\ndjango-mongoengine-filter\n=========================\n`django-mongoengine-filter` is a reusable Django application for allowing users\nto filter `mongoengine querysets`_ dynamically. It's very similar to\npopular `django-filter` library and is design to be used as a drop-in\nreplacement (as much as it's possible) strictly tied to `MongoEngine`.\n\nFull documentation on `Read the docs`_.\n\n.. image:: https://img.shields.io/pypi/v/django-mongoengine-filter.svg\n :target: https://pypi.python.org/pypi/django-mongoengine-filter\n :alt: PyPI Version\n\nRequirements\n============\n* Python 2.7, 3.5, 3.6, 3.7\n* Django 1.11, 2.0, 2.1, 2.2\n\nInstallation\n============\nInstall using pip:\n\n.. code-block:: sh\n\n pip install django-mongoengine-filter\n\nOr latest development version:\n\n.. code-block:: sh\n\n pip install https://github.com/barseghyanartur/django-mongoengine-filter/archive/master.zip\n\nUsage\n=====\n**Sample document**\n\n.. code-block:: python\n\n from mongoengine import fields, document\n from .constants import PROFILE_TYPES, PROFILE_TYPE_FREE, GENDERS, GENDER_MALE\n\n class Person(document.Document):\n\n name = fields.StringField(\n required=True,\n max_length=255,\n default=\"Robot\",\n verbose_name=\"Name\"\n )\n age = fields.IntField(required=True, verbose_name=\"Age\")\n num_fingers = fields.IntField(\n required=False,\n verbose_name=\"Number of fingers\"\n )\n profile_type = fields.StringField(\n required=False,\n blank=False,\n null=False,\n choices=PROFILE_TYPES,\n default=PROFILE_TYPE_FREE,\n )\n gender = fields.StringField(\n required=False,\n blank=False,\n null=False,\n choices=GENDERS,\n default=GENDER_MALE\n )\n\n def __str__(self):\n return self.name\n\n**Sample filter**\n\n.. code-block:: python\n\n import django_mongoengine_filter\n\n class PersonFilter(django_mongoengine_filter.FilterSet):\n\n profile_type = django_mongoengine_filter.StringFilter()\n ten_fingers = django_mongoengine_filter.MethodFilter(\n action=\"ten_fingers_filter\"\n )\n\n class Meta:\n model = Person\n fields = [\"profile_type\", \"ten_fingers\"]\n\n def ten_fingers_filter(self, queryset, name, value):\n if value == 'yes':\n return queryset.filter(num_fingers=10)\n return queryset\n\n**Sample view**\n\nWith function-based views:\n\n.. code-block:: python\n\n def person_list(request):\n filter = PersonFilter(request.GET, queryset=Person.objects)\n return render(request, \"dfm_app/person_list.html\", {\"object_list\": filter.qs})\n\nOr class-based views:\n\n.. code-block:: python\n\n from django_mongoengine_filter.views import FilterView\n\n class PersonListView(FilterView):\n\n filterset_class = PersonFilter\n template_name = \"dfm_app/person_list.html\"\n\n**Sample template**\n\n.. code-block:: html\n\n \n\n**Sample requests**\n\n- GET /persons/\n- GET /persons/?profile_type=free&gender=male\n- GET /persons/?profile_type=free&gender=female\n- GET /persons/?profile_type=member&gender=female\n- GET /persons/?ten_fingers=yes\n\nDevelopment\n===========\nTesting\n-------\nTo run tests in your working environment type:\n\n.. code-block:: sh\n\n ./runtests.py\n\nTo test with all supported Python versions type:\n\n.. code-block:: sh\n\n tox\n\nRunning MongoDB\n---------------\nThe easiest way is to run it via Docker:\n\n.. code-block:: sh\n\n docker pull mongo:latest\n docker run -p 27017:27017 mongo:latest\n\nWriting documentation\n---------------------\nKeep the following hierarchy.\n\n.. code-block:: text\n\n =====\n title\n =====\n\n header\n ======\n\n sub-header\n ----------\n\n sub-sub-header\n ~~~~~~~~~~~~~~\n\n sub-sub-sub-header\n ^^^^^^^^^^^^^^^^^^\n\n sub-sub-sub-sub-header\n ++++++++++++++++++++++\n\n sub-sub-sub-sub-sub-header\n **************************\n\nLicense\n=======\nGPL 2.0/LGPL 2.1\n\nSupport\n=======\nFor any issues contact me at the e-mail given in the `Author`_ section.\n\nAuthor\n======\nArtur Barseghyan \n\n.. _`mongoengine querysets`: http://mongoengine-odm.readthedocs.org/apireference.html#module-mongoengine.queryset\n.. _`read the docs`: https://django-mongoengine-filter.readthedocs.org/\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/barseghyanartur/django-mongoengine-filter", "keywords": "", "license": "GPL 2.0/LGPL 2.1", "maintainer": "", "maintainer_email": "", "name": "django-mongoengine-filter", "package_url": "https://pypi.org/project/django-mongoengine-filter/", "platform": "", "project_url": "https://pypi.org/project/django-mongoengine-filter/", "project_urls": { "Homepage": "https://github.com/barseghyanartur/django-mongoengine-filter" }, "release_url": "https://pypi.org/project/django-mongoengine-filter/0.3.4/", "requires_dist": null, "requires_python": "", "summary": "django-mongoengine-filter is a reusable Django application inspired from django-filter for allowing mongoengine users to filter querysets dynamically.", "version": "0.3.4" }, "last_serial": 5096607, "releases": { "0.1": [ { "comment_text": "", "digests": { "md5": "6ed4c45de219bc8a09e80bcc7a7cf6ba", "sha256": "fd0128b39bcb93616f522b4f8825ef4dfbde876daf1224ffd8197a282156ddb5" }, "downloads": -1, "filename": "django_mongoengine_filter-0.1-py3-none-any.whl", "has_sig": false, "md5_digest": "6ed4c45de219bc8a09e80bcc7a7cf6ba", "packagetype": "bdist_wheel", "python_version": "3.6", "requires_python": null, "size": 31907, "upload_time": "2019-03-25T13:29:23", "url": "https://files.pythonhosted.org/packages/2a/5f/4fce04e73b0b9e184876f032df5ba71af99dbc3a8f44ad169e938856c0ae/django_mongoengine_filter-0.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "461d9bd7038760ecc973bbe65b463da7", "sha256": "c0f7ae0dd8cf516bda90a89dfb955f2c1d4285e73e3251af56b73c75c58b43f4" }, "downloads": -1, "filename": "django-mongoengine-filter-0.1.tar.gz", "has_sig": false, "md5_digest": "461d9bd7038760ecc973bbe65b463da7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10640, "upload_time": "2019-03-25T13:29:20", "url": "https://files.pythonhosted.org/packages/47/0a/266a6bb4a15e1ca53b833cd91134b0519d28f47b89e834d58b2aa66fa088/django-mongoengine-filter-0.1.tar.gz" } ], "0.2": [ { "comment_text": "", "digests": { "md5": "72f0903aa328379548d02870b5f0d32a", "sha256": "14c4b5b837e815a235e409b5adc43817dc3e60e75852b4f88f10409094b35702" }, "downloads": -1, "filename": "django_mongoengine_filter-0.2-py3-none-any.whl", "has_sig": false, "md5_digest": "72f0903aa328379548d02870b5f0d32a", "packagetype": "bdist_wheel", "python_version": "3.6", "requires_python": null, "size": 32665, "upload_time": "2019-03-25T16:00:08", "url": "https://files.pythonhosted.org/packages/ee/e6/819b81ed2b5483b4e0989b4a76bb3b3c12a3a79d6702b6b770dfeea0557a/django_mongoengine_filter-0.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "30de65da15cbdec4024791a2fc223359", "sha256": "e24e5cb0d067b6a25534185656361d4269ec51640758c8994fec8c8e1cd238aa" }, "downloads": -1, "filename": "django-mongoengine-filter-0.2.tar.gz", "has_sig": false, "md5_digest": "30de65da15cbdec4024791a2fc223359", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11484, "upload_time": "2019-03-25T16:00:06", "url": "https://files.pythonhosted.org/packages/fc/6b/2385f4a8d7c5eef21b36477dd1542a7620a69a3ad6968afcc7f1e86e1172/django-mongoengine-filter-0.2.tar.gz" } ], "0.3": [ { "comment_text": "", "digests": { "md5": "456f7e4388d3752074cd34f65216a854", "sha256": "8e4f65e37a8ecaa407a21a992bdc627b37b2cb18fedb7f69712e8b7b144cb775" }, "downloads": -1, "filename": "django_mongoengine_filter-0.3-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "456f7e4388d3752074cd34f65216a854", "packagetype": "bdist_wheel", "python_version": "3.6", "requires_python": null, "size": 32940, "upload_time": "2019-03-25T22:53:10", "url": "https://files.pythonhosted.org/packages/11/8f/128cc4d04d48b5e6c18672c18ef142f887f5574430b540acf45e99ebdbf1/django_mongoengine_filter-0.3-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "17d08d003f9765ce704c5379f713924d", "sha256": "387d75f2c1e73ce71f3e771b689b163e1163ab7ff42580988617fb2285edee13" }, "downloads": -1, "filename": "django-mongoengine-filter-0.3.tar.gz", "has_sig": false, "md5_digest": "17d08d003f9765ce704c5379f713924d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 24461, "upload_time": "2019-03-25T22:53:09", "url": "https://files.pythonhosted.org/packages/4e/04/f05480b241e807d21ccd8d8e768f1d545bb67504e625f81f2c1f098c1557/django-mongoengine-filter-0.3.tar.gz" } ], "0.3.1": [ { "comment_text": "", "digests": { "md5": "5b8bb75c501a028f11d7aa161976af1e", "sha256": "62aa77e789dfa57ae067e446a625a673fc7a37d51ea67af84a9da4024f2d7536" }, "downloads": -1, "filename": "django_mongoengine_filter-0.3.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "5b8bb75c501a028f11d7aa161976af1e", "packagetype": "bdist_wheel", "python_version": "3.6", "requires_python": null, "size": 33187, "upload_time": "2019-03-26T22:08:59", "url": "https://files.pythonhosted.org/packages/02/e8/5a503585d0d3024a7d3fd41a407f18d436892a5f55461359fff80fdcc11f/django_mongoengine_filter-0.3.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "80a5649a81b564c7e52b1a7a5645eb07", "sha256": "5152e0889b6fb8c97701b205f4e24212003122e8069104a09422e9b79780acfd" }, "downloads": -1, "filename": "django-mongoengine-filter-0.3.1.tar.gz", "has_sig": false, "md5_digest": "80a5649a81b564c7e52b1a7a5645eb07", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 24721, "upload_time": "2019-03-26T22:08:57", "url": "https://files.pythonhosted.org/packages/fe/48/cbe9a40391ec40f8d2ecc007da614afd523225703aac42be501b8f4d0aba/django-mongoengine-filter-0.3.1.tar.gz" } ], "0.3.2": [ { "comment_text": "", "digests": { "md5": "cc016dda44e5477377ac95242aad285e", "sha256": "3f61c31c5894f52eb2e07ab92202f1bfde0b9078443a70267e8afcc033e426d1" }, "downloads": -1, "filename": "django_mongoengine_filter-0.3.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "cc016dda44e5477377ac95242aad285e", "packagetype": "bdist_wheel", "python_version": "3.6", "requires_python": null, "size": 35337, "upload_time": "2019-04-01T20:19:23", "url": "https://files.pythonhosted.org/packages/1e/1a/1feeea1327cfd11e2252002cf62dcbb58fb2f789eaed1d08cd85d6729ad6/django_mongoengine_filter-0.3.2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "16cbcf691f7e5dff5c32470579201a81", "sha256": "42221d46880df94541a9491d3f76645fefe7cc5ffd4bbdaac22637794d58b672" }, "downloads": -1, "filename": "django-mongoengine-filter-0.3.2.tar.gz", "has_sig": false, "md5_digest": "16cbcf691f7e5dff5c32470579201a81", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 27431, "upload_time": "2019-04-01T20:19:21", "url": "https://files.pythonhosted.org/packages/fb/a1/4084b2f97b7569c6926f24711c537c8a9900be41ec743c897d39b0e7f8a6/django-mongoengine-filter-0.3.2.tar.gz" } ], "0.3.3": [ { "comment_text": "", "digests": { "md5": "b760e591b87d8bf2ea40fdcc475db4f1", "sha256": "63c172e5b03d0783be42bd8b89ba0263a39aa716c63ffb728613a1bd103dc4ad" }, "downloads": -1, "filename": "django_mongoengine_filter-0.3.3-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "b760e591b87d8bf2ea40fdcc475db4f1", "packagetype": "bdist_wheel", "python_version": "3.6", "requires_python": null, "size": 35341, "upload_time": "2019-04-02T21:38:39", "url": "https://files.pythonhosted.org/packages/9c/c1/8602351081fed1350aee623a17f2c79e173bb5437aba4a54a56c447a92ed/django_mongoengine_filter-0.3.3-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "377b8a9bc0df6f77bc44a869a737acea", "sha256": "61c8f42048587cba62f8fb95fb27097ae16981d50aa8a417d08d0b81e30f5567" }, "downloads": -1, "filename": "django-mongoengine-filter-0.3.3.tar.gz", "has_sig": false, "md5_digest": "377b8a9bc0df6f77bc44a869a737acea", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 27473, "upload_time": "2019-04-02T21:38:37", "url": "https://files.pythonhosted.org/packages/bf/11/f1ca38c31ea678fe76f485d59a709cc4508e8b658b3f968046017cbc7fa8/django-mongoengine-filter-0.3.3.tar.gz" } ], "0.3.4": [ { "comment_text": "", "digests": { "md5": "2e460104d8001edd9474f792a2622197", "sha256": "66c2ad9a95879adb65a2b210f3d5277813bba805a5c168951458f6f958d084a0" }, "downloads": -1, "filename": "django_mongoengine_filter-0.3.4-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "2e460104d8001edd9474f792a2622197", "packagetype": "bdist_wheel", "python_version": "3.6", "requires_python": null, "size": 35330, "upload_time": "2019-04-04T11:13:36", "url": "https://files.pythonhosted.org/packages/65/66/ad72ba15d9208dbef17d610c6d9deadc5fc0fb36c86f3495a4004f6e2913/django_mongoengine_filter-0.3.4-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "15ea8ee151cea06a8298ebb36a34a739", "sha256": "cb3fd467f2cb36f8ac87e49b503dcdab1e77ef118c905b41671916031ca4fef0" }, "downloads": -1, "filename": "django-mongoengine-filter-0.3.4.tar.gz", "has_sig": false, "md5_digest": "15ea8ee151cea06a8298ebb36a34a739", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 29196, "upload_time": "2019-04-04T11:13:33", "url": "https://files.pythonhosted.org/packages/85/b4/33553c42abdab612e389c5f6b025a7f3562dd31a0101fb4248f45cfd0bb2/django-mongoengine-filter-0.3.4.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "2e460104d8001edd9474f792a2622197", "sha256": "66c2ad9a95879adb65a2b210f3d5277813bba805a5c168951458f6f958d084a0" }, "downloads": -1, "filename": "django_mongoengine_filter-0.3.4-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "2e460104d8001edd9474f792a2622197", "packagetype": "bdist_wheel", "python_version": "3.6", "requires_python": null, "size": 35330, "upload_time": "2019-04-04T11:13:36", "url": "https://files.pythonhosted.org/packages/65/66/ad72ba15d9208dbef17d610c6d9deadc5fc0fb36c86f3495a4004f6e2913/django_mongoengine_filter-0.3.4-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "15ea8ee151cea06a8298ebb36a34a739", "sha256": "cb3fd467f2cb36f8ac87e49b503dcdab1e77ef118c905b41671916031ca4fef0" }, "downloads": -1, "filename": "django-mongoengine-filter-0.3.4.tar.gz", "has_sig": false, "md5_digest": "15ea8ee151cea06a8298ebb36a34a739", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 29196, "upload_time": "2019-04-04T11:13:33", "url": "https://files.pythonhosted.org/packages/85/b4/33553c42abdab612e389c5f6b025a7f3562dd31a0101fb4248f45cfd0bb2/django-mongoengine-filter-0.3.4.tar.gz" } ] }