Repository navigation
Releases: rodolvbg/django-admin-inline-controls
Releases · rodolvbg/django-admin-inline-controls
Release list
v0.1.2
Added
inline_filter_autocomplete: filters by a relation search as you type,
with the admin's autocomplete.inline_filter_only_used_values: filters offer only the values the
parent's rows have.inline_filter_sheet: the filters behind a Filters button that says
how many are on, like Unfold'slist_filter_sheet: always, or only when
the inline is narrow ("narrow").
Changed
InlineControlsMixinandInlineControlsAdminMixinare now the sum of
one mixin per feature (django_admin_inline_controls.features:
pagination, ordering, filters, saving the inline, bulk actions), each
with its options, its methods and its script. Nothing changes for the
inlines: same options, same behaviour, same imports.
Removed
- Footer rows (
inline_footer_rows,inline_footer_scope,
inline_footer_tfoot,inline_footer_tfoot_template,
get_inline_footer_rows(),format_inline_footer_value(), the
tfoot.htmltemplate and checksE013toE017): they're in
django-admin-tables
now, for inlines and the changelist alike. ItsFooterRowsMixinfollows
these controls' filters and paging, and comes back with the refreshed
inline: see the README's "Footer rows". - Row actions (
inline_actions,get_inline_actions(),
inline_actions_template, theViewAction,DeleteActionand
DefaultActionsMixinmixins,row_actions.htmland checksE018,
E019andE105): they're in
django-admin-tables
now, for inlines and the changelist alike. ItsRowActionsMixin
refreshes only these controls' inline, keeping its filters and page: see
the README's "Row actions".
v0.1.1
v0.1.0
[0.1.0] - 2026-10-07
First release.
Added
InlineControlsMixinforTabularInlineandStackedInline:- pagination, with page links or infinite scroll, and saving rows loaded
across several pages; - filters, generated from lookups or from a form of yours
(contrib.filtersfor a django-filterFilterSet); - multi-column sorting from the column headers;
- state namespaced per inline in the URL, and in-place refresh of a
single inline (re-initializing the admin's inline and widget JS) with
an unsaved-changes prompt.
- pagination, with page links or infinite scroll, and saving rows loaded
- Saving one inline (
inline_save_button, with
InlineControlsAdminMixinon the parent): without submitting or
reloading the rest of the page, recorded in the parent's history. - Bulk actions (
inline_bulk_actions): like the changelist's, on the
selected rows, with "select all" across pages, the@inline_action
decorator (permissions, confirmation prompts) and a built-in
delete_selected. - Row actions (
inline_actions): buttons on each saved row, with
django-inline-actions' API — the(request, obj, parent_obj)signature,
get_inline_actions(), per-rowget_<action>_label/css/attr()hooks and
theViewAction,DeleteActionandDefaultActionsMixinmixins — run
without submitting the change form, with the permissions checked by the
server. - Footer rows (
inline_footer_rows,inline_footer_scope): totals,
averages… aggregated in one query over the filtered rows or the page,
rendered by the server as the table's<tfoot>(also in the add view,
empty) or as a summary line; raw values indata-*attributes for the
page's JS; format (format_inline_footer_value()) and markup
(tfoot.html) customizable. - Customizable markup: template blocks throughout, per-inline
templates, andinline_controls_selectors(DEFAULT_SELECTORS) for
themes and custom inline templates, plus theinline-controls:placeand
inline-controls:updatedevents. - django-unfold support (
contrib.unfold,unfoldextra): the
controls in Unfold's inlines with its colors, light and dark. - django-nested-admin support (
contrib.nested,nestedextra). - Only the scripts an inline uses are loaded (
core.js,save.js,
actions.js). - Spanish translation, and system checks for every option.
- Django 4.2 – 6.1, Python 3.10+.