django-extra-views
Extra class-based views for Django
Decision gist · record as of 2026-08-14
Yes, if you are building Django applications that require multi-form editing or formset handling. The package is mature, well-established, and has no known vulnerabilities. The long release cycle (479 days) is a minor concern but the repository remains active. Install it when you need to reduce boilerplate for common formset and inline editing patterns.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires Django to be installed and configured; Python 3.5 or later.
- Low friction install with a single runtime dependency on Django.
- The package is aging (479 days since last release) but the repository remains active with recent commits and is not archived, suggesting maintenance continues despite the long release cycle.
License · maintenance · safety
MIT (permissive) — MIT license is permissive and places no restrictions on use, modification, or distribution in commercial or private projects.
last release 2025-04-22 (479 days) · last repo commit 2025-04-28 · 1,436 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 284,839 downloads/mo, #8,060 on PyPI
Alternatives
Verify before relying
pip install django-extra-views
Add 'extra_views' to INSTALLED_APPS in settings.py.
from extra_views import ModelFormSetView
class ItemFormSetView(ModelFormSetView):
model = Item
fields = ['name', 'sku']
template_name = 'item_formset.html'- Whether the package's formset views work reliably with all supported Django versions (2.2-5.1) in practice
- Current state of pagination support mentioned as 'still to do' in the description
What it is and what it does
django-extra-views extends Django's built-in class-based views with specialized views for handling formsets and inline model editing. It provides FormSetView and ModelFormSetView for rendering formsets, InlineFormSetView for editing related models, and CreateWithInlinesView/UpdateWithInlinesView for editing a model and multiple inline formsets in a single request. The package also includes mixins for sorting, searching, and displaying success messages. It depends only on Django itself and is designed to reduce boilerplate when building admin-like interfaces or complex multi-form pages.
The package targets developers building Django applications that need to handle multiple related forms on a single page—a common pattern in admin interfaces and data management systems. It has been maintained since 2011 and supports modern Python versions (3.6+) and recent Django releases (2.2-5.1).
Use it for
- Build an admin-like interface to edit a model and its related inline formsets in a single view without writing custom form handling logic.
- Create a formset view to manage multiple instances of the same model (e.g., a list of addresses or line items) with a single POST request.
- Add search and sorting functionality to list views using the SearchableListMixin and SortableListMixin without custom queryset logic.
- Handle generic inline formsets for models with GenericForeignKey relationships using GenericInlineFormSetView.
- Display success messages after formset submission using FormSetSuccessMessageMixin to provide user feedback.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes, if you are building Django applications that require multi-form editing or formset handling.
The package is mature, well-established, and has no known vulnerabilities. The long release cycle (479 days) is a minor concern but the repository remains active. Install it when you need to reduce boilerplate for common formset and inline editing patterns.
Install
django-extra-views on PyPI
Before you install
Low friction install with a single runtime dependency on Django. The package is aging (479 days since last release) but the repository remains active with recent commits and is not archived, suggesting maintenance continues despite the long release cycle.
Requires Django to be installed and configured; Python 3.5 or later.
License in practice
MIT license is permissive and places no restrictions on use, modification, or distribution in commercial or private projects.
Quickstart
pip install django-extra-views
Add 'extra_views' to INSTALLED_APPS in settings.py.
from extra_views import ModelFormSetView
class ItemFormSetView(ModelFormSetView):
model = Item
fields = ['name', 'sku']
template_name = 'item_formset.html'
Verify before relying
- Whether the package's formset views work reliably with all supported Django versions (2.2-5.1) in practice
- Current state of pagination support mentioned as 'still to do' in the description
Package facts
| License | MIT permissive |
| Python support | Supports the current Python release >=3.5 |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | 1 packageDjango |
| Maintenance | Aging 479 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 284,839 / month, #8,060 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Development Status :: 3 - AlphaEnvironment :: Web EnvironmentFramework :: DjangoIntended Audience :: DevelopersLicense :: OSI Approved :: MIT LicenseProgramming Language :: PythonProgramming Language :: Python :: 3 |
Evidence: django_extra_views-0.16.0-py2.py3-none-any.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “django class-based views formset”
- django-extra-viewsProvides additional class-based views for Django that simplify common…
- django-bracesProvides reusable mixin classes for Django class-based views,…
- django-ninja-extraDjango Ninja Extra extends Django Ninja with class-based controllers,…
Give your agent the search over MCP, or paste the wish link into any chat.
More Application Frameworks packages
FastAPI is a Python web framework for building REST APIs using type hints, with automatic request validation, serialization, and interactive API documentation.
Provides a way to document function parameters, class attributes, return types, and variables inline using Python's `Annotated` type hint syntax instead of traditional docstrings.
Textual is a Python framework for building cross-platform user interfaces that run in the terminal or web browser using a modern, component-based API.
Install it if you're developing CLI tools, dashboards, or interactive terminal applications.
Typer builds command-line applications from Python functions using type hints, automatically generating help text, argument parsing, and shell completion.
Install it if you are building CLIs in Python.
Build and connect to Model Context Protocol servers that expose tools, resources, and prompts to LLM applications over stdio, HTTP, or SSE transports.
Install it if you need to build or connect to servers.
Werkzeug is a WSGI utility library providing request/response objects, URL routing, an interactive debugger, HTTP utilities, and a development server for building web applications.
See also django-braces · django-test-plus · django-service-objects · django-admin-extra-buttons · django-nonrelated-inlines · django-weasyprint · django-rest-multiple-models · django-adminplus · django-ninja-extra · django-admin-data-views