The Wire · Showcase
DJANGO ADMIN FIXES SAVE-AS-NEW FOR VIEW-ONLY INLINES
By RepoJournal · Filed · About Django
Django patched a long-standing admin bug where save-as-new operations incorrectly re-rendered view-only inline formsets as editable on validation errors.
The fix addresses ticket #29969 [1], which caused the parent object_id to clear too early during save_as POSTs, breaking the readonly state of inlines on re-render. This matters because developers relying on view-only inlines in admin workflows will no longer see unexpected form fields appear after validation failures. Separately, the testing docs got a completeness pass: async_client_class and async_client are now properly documented in SimpleTestCase [2], matching the existing client_class documentation. On the djangoproject.com side, the tracdb unmanaged model migration was synced to match Django main's migration tracking [3], which is effectively a no-op since unmanaged models don't generate schema changes. The supported versions table for Django 6.1 was also corrected [4]. Across both repos, 6 commits and 10 PRs landed in the last 24 hours, all focused on polish and correctness rather than new features.
One email a day. Unsubscribe in one click.
Keep up with Django in about 3 minutes a day: what actually shipped — the commits, pull requests, releases, and security advisories that matter.
One email a day. Unsubscribe in one click. Read a past issue →
Action items
- → Review the save-as-new fix if you maintain custom admin inlines with permission restrictions django/django [plan]
- → Update any local documentation referencing async_client to point to SimpleTestCase docs django/django [monitor]
- → Run makemigrations if you have tracdb models in your djangoproject fork django/djangoproject.com [plan]
References
- [1] Fixed #29969 -- Omitted inlines without add permission on save-as-new. ↗ django/django
- [2] Fixed #37196 -- Documented SimpleTestCase.async_client_class and async_client in testing tools. ↗ django/django
- [3] Added tracbd unmanaged model migration. ↗ django/djangoproject.com
- [4] Fixed "Supported Version" table for 6.1. ↗ django/djangoproject.com