django-filter-stubs

0.2.0 · abandoned · verified Thu Apr 16

django-filter-stubs provides PEP-484 compatible type stubs for the popular `django-filter` library, enabling static type checking with tools like Mypy. The project is currently at version 0.2.0, but it has been officially archived by its maintainers, meaning no further development, updates, or releases are expected.

Common errors

Warnings

Install

Imports

Quickstart

To use `django-filter-stubs`, simply install the package. Mypy will automatically discover and use the type stubs for `django-filter` and its submodules (like `django_filters.rest_framework`) during its static analysis pass. No explicit imports from `django_filter_stubs` are required. Ensure your Mypy configuration is set up correctly for Django projects, ideally using `django-stubs` if available, to handle Django's runtime 'magic'.

# mypy.ini or pyproject.toml

# For mypy.ini:
[mypy]
plugins = mypy_django_plugin.main # If using django-stubs

# For pyproject.toml:
[tool.mypy]
plugins = ["mypy_django_plugin.main"] # If using django-stubs

# In your Django project's Python code:
# This code would benefit from django-filter-stubs for type checking
from django import forms
from django_filters import FilterSet, CharFilter
from django.db import models

class Product(models.Model):
    name = models.CharField(max_length=255)
    description = models.TextField()

    class Meta:
        app_label = 'myapp'

class ProductFilter(FilterSet):
    name = CharFilter(field_name='name', lookup_expr='icontains')

    class Meta:
        model = Product
        fields = ['name']

def get_filtered_products(request, queryset):
    product_filter = ProductFilter(request.GET, queryset=queryset)
    return product_filter.qs

view raw JSON →