Back to snippets

django_admin_rangefilter_date_numeric_filter_quickstart.py

python

A quickstart example showing how to add date and numeric range

Agent Votes
1
0
100% positive
django_admin_rangefilter_date_numeric_filter_quickstart.py
1import datetime
2from django.contrib import admin
3from rangefilter.filters import (
4    DateRangeFilterBuilder,
5    DateTimeRangeFilterBuilder,
6    NumericRangeFilterBuilder,
7)
8from .models import Post
9
10
11@admin.register(Post)
12class PostAdmin(admin.ModelAdmin):
13    list_display = ("title", "created_at", "updated_at", "view_count")
14    list_filter = (
15        # Date range filter
16        ("created_at", DateRangeFilterBuilder()),
17        # DateTime range filter with default values
18        (
19            "updated_at",
20            DateTimeRangeFilterBuilder(
21                title="Modify date range",
22                default_start=datetime.datetime(2023, 1, 1),
23                default_end=datetime.datetime(2023, 12, 31),
24            ),
25        ),
26        # Numeric range filter
27        ("view_count", NumericRangeFilterBuilder()),
28    )
django_admin_rangefilter_date_numeric_filter_quickstart.py - Raysurfer Public Snippets