django-admin-rangefilter


Namedjango-admin-rangefilter JSON
Version 0.13.2 PyPI version JSON
download
home_pagehttps://github.com/silentsokolov/django-admin-rangefilter
Summarydjango-admin-rangefilter app, add the filter by a custom date range on the admin UI.
upload_time2024-08-24 06:05:42
maintainerNone
docs_urlNone
authorDmitriy Sokolov
requires_python!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,>=2.7
licenseMIT
keywords
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            .. image:: https://github.com/silentsokolov/django-admin-rangefilter/workflows/build/badge.svg?branch=master
   :target: https://github.com/silentsokolov/django-admin-rangefilter/actions?query=workflow%3Abuild

.. image:: https://codecov.io/gh/silentsokolov/django-admin-rangefilter/branch/master/graph/badge.svg
   :target: https://codecov.io/gh/silentsokolov/django-admin-rangefilter

django-admin-rangefilter
========================

A Django app that adds a filter by date range and numeric range to the admin UI.

.. image:: https://raw.githubusercontent.com/silentsokolov/django-admin-rangefilter/master/docs/images/screenshot.png


Requirements
------------

* Python 3.6+
* Django 1.11+


Installation
------------

Use your favorite Python package manager to install the app from PyPI, e.g.

Example:

``pip install django-admin-rangefilter``


Add ``rangefilter`` to ``INSTALLED_APPS``:

Example:

.. code:: python

    INSTALLED_APPS = (
        ...
        'rangefilter',
        ...
    )


Example usage
-------------

In admin
~~~~~~~~

.. code:: python

    from datetime import datetime

    from django.contrib import admin
    from rangefilter.filters import (
        DateRangeFilterBuilder,
        DateTimeRangeFilterBuilder,
        NumericRangeFilterBuilder,
        DateRangeQuickSelectListFilterBuilder,
    )

    from .models import Post


    @admin.register(Post)
    class PostAdmin(admin.ModelAdmin):
        list_filter = (
            ("created_at", DateRangeFilterBuilder()),
            (
                "updated_at",
                DateTimeRangeFilterBuilder(
                    title="Custom title",
                    default_start=datetime(2020, 1, 1),
                    default_end=datetime(2030, 1, 1),
                ),
            ),
            ("num_value", NumericRangeFilterBuilder()),
            ("created_at", DateRangeQuickSelectListFilterBuilder()),  # Range + QuickSelect Filter
        )


Support Content-Security-Policy
-------------------------------

For Django 1.8+, if `django-csp <https://github.com/mozilla/django-csp>`_ is installed, nonces will be added to style and script tags.

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/silentsokolov/django-admin-rangefilter",
    "name": "django-admin-rangefilter",
    "maintainer": null,
    "docs_url": null,
    "requires_python": "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,>=2.7",
    "maintainer_email": null,
    "keywords": null,
    "author": "Dmitriy Sokolov",
    "author_email": "silentsokolov@gmail.com",
    "download_url": "https://files.pythonhosted.org/packages/74/89/7d33a1c6c0d0770feea621439e010a2bb0f3023ec4c938ae582f3a93eb9f/django_admin_rangefilter-0.13.2.tar.gz",
    "platform": "any",
    "description": ".. image:: https://github.com/silentsokolov/django-admin-rangefilter/workflows/build/badge.svg?branch=master\n   :target: https://github.com/silentsokolov/django-admin-rangefilter/actions?query=workflow%3Abuild\n\n.. image:: https://codecov.io/gh/silentsokolov/django-admin-rangefilter/branch/master/graph/badge.svg\n   :target: https://codecov.io/gh/silentsokolov/django-admin-rangefilter\n\ndjango-admin-rangefilter\n========================\n\nA Django app that adds a filter by date range and numeric range to the admin UI.\n\n.. image:: https://raw.githubusercontent.com/silentsokolov/django-admin-rangefilter/master/docs/images/screenshot.png\n\n\nRequirements\n------------\n\n* Python 3.6+\n* Django 1.11+\n\n\nInstallation\n------------\n\nUse your favorite Python package manager to install the app from PyPI, e.g.\n\nExample:\n\n``pip install django-admin-rangefilter``\n\n\nAdd ``rangefilter`` to ``INSTALLED_APPS``:\n\nExample:\n\n.. code:: python\n\n    INSTALLED_APPS = (\n        ...\n        'rangefilter',\n        ...\n    )\n\n\nExample usage\n-------------\n\nIn admin\n~~~~~~~~\n\n.. code:: python\n\n    from datetime import datetime\n\n    from django.contrib import admin\n    from rangefilter.filters import (\n        DateRangeFilterBuilder,\n        DateTimeRangeFilterBuilder,\n        NumericRangeFilterBuilder,\n        DateRangeQuickSelectListFilterBuilder,\n    )\n\n    from .models import Post\n\n\n    @admin.register(Post)\n    class PostAdmin(admin.ModelAdmin):\n        list_filter = (\n            (\"created_at\", DateRangeFilterBuilder()),\n            (\n                \"updated_at\",\n                DateTimeRangeFilterBuilder(\n                    title=\"Custom title\",\n                    default_start=datetime(2020, 1, 1),\n                    default_end=datetime(2030, 1, 1),\n                ),\n            ),\n            (\"num_value\", NumericRangeFilterBuilder()),\n            (\"created_at\", DateRangeQuickSelectListFilterBuilder()),  # Range + QuickSelect Filter\n        )\n\n\nSupport Content-Security-Policy\n-------------------------------\n\nFor Django 1.8+, if `django-csp <https://github.com/mozilla/django-csp>`_ is installed, nonces will be added to style and script tags.\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "django-admin-rangefilter app, add the filter by a custom date range on the admin UI.",
    "version": "0.13.2",
    "project_urls": {
        "Homepage": "https://github.com/silentsokolov/django-admin-rangefilter"
    },
    "split_keywords": [],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "ff499f2656dd47dc7d6e9fbfc967115b1880d49a52325e7390d4630301dff7ce",
                "md5": "249ce20a0e9011588af8105326d5ba14",
                "sha256": "012e4bf28790344db5b63a57b814a3d4ae8f7cd8692854288bd3c396515aa761"
            },
            "downloads": -1,
            "filename": "django_admin_rangefilter-0.13.2-py2.py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "249ce20a0e9011588af8105326d5ba14",
            "packagetype": "bdist_wheel",
            "python_version": "py2.py3",
            "requires_python": "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,>=2.7",
            "size": 47955,
            "upload_time": "2024-08-24T06:05:40",
            "upload_time_iso_8601": "2024-08-24T06:05:40.520630Z",
            "url": "https://files.pythonhosted.org/packages/ff/49/9f2656dd47dc7d6e9fbfc967115b1880d49a52325e7390d4630301dff7ce/django_admin_rangefilter-0.13.2-py2.py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "74897d33a1c6c0d0770feea621439e010a2bb0f3023ec4c938ae582f3a93eb9f",
                "md5": "d7688f573de3dbc32f88b51fa1659c81",
                "sha256": "12750c32c01d6cc891ba7d05267ce9921527042084da0ac9548a3ae8109f90d3"
            },
            "downloads": -1,
            "filename": "django_admin_rangefilter-0.13.2.tar.gz",
            "has_sig": false,
            "md5_digest": "d7688f573de3dbc32f88b51fa1659c81",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,>=2.7",
            "size": 23136,
            "upload_time": "2024-08-24T06:05:42",
            "upload_time_iso_8601": "2024-08-24T06:05:42.559232Z",
            "url": "https://files.pythonhosted.org/packages/74/89/7d33a1c6c0d0770feea621439e010a2bb0f3023ec4c938ae582f3a93eb9f/django_admin_rangefilter-0.13.2.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-08-24 06:05:42",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "silentsokolov",
    "github_project": "django-admin-rangefilter",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "django-admin-rangefilter"
}
        
Elapsed time: 0.88551s