Skip to content

Releases: rodolvbg/django-admin-inline-controls

v0.1.2

Choose a tag to compare

@rodolvbg rodolvbg released this 24 Oct 09:08

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's list_filter_sheet: always, or only when
    the inline is narrow ("narrow").

Changed

  • InlineControlsMixin and InlineControlsAdminMixin are 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.html template and checks E013 to E017): they're in
    django-admin-tables
    now, for inlines and the changelist alike. Its FooterRowsMixin follows
    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, the ViewAction, DeleteAction and
    DefaultActionsMixin mixins, row_actions.html and checks E018,
    E019 and E105): they're in
    django-admin-tables
    now, for inlines and the changelist alike. Its RowActionsMixin
    refreshes only these controls' inline, keeping its filters and page: see
    the README's "Row actions".

v0.1.1

Choose a tag to compare

@rodolvbg rodolvbg released this 07 Oct 12:38

Fixed

  • The README's screenshots and links on PyPI: the README keeps relative
    paths, made absolute in the package's description when it is built
    (hatch-fancy-pypi-readme).

v0.1.0

Choose a tag to compare

@rodolvbg rodolvbg released this 06 Oct 15:37

[0.1.0] - 2026-10-07

First release.

Added

  • InlineControlsMixin for TabularInline and StackedInline:
    • 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.filters for a django-filter FilterSet);
    • 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.
  • Saving one inline (inline_save_button, with
    InlineControlsAdminMixin on 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-row get_<action>_label/css/attr() hooks and
    the ViewAction, DeleteAction and DefaultActionsMixin mixins — 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 in data-* attributes for the
    page's JS; format (format_inline_footer_value()) and markup
    (tfoot.html) customizable.
  • Customizable markup: template blocks throughout, per-inline
    templates, and inline_controls_selectors (DEFAULT_SELECTORS) for
    themes and custom inline templates, plus the inline-controls:place and
    inline-controls:updated events.
  • django-unfold support (contrib.unfold, unfold extra): the
    controls in Unfold's inlines with its colors, light and dark.
  • django-nested-admin support (contrib.nested, nested extra).
  • 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+.