Release notes
Django 1.4 release notes
Backwards incompatible changes in 1.4
To avoid conflicts with other common CSS class names (e.g. “button”), we added a prefix (“field-”) to all CSS class names automatically generated from the form field names in the main admin forms, stacked inline forms and tabular inline cells.
Release notes
Django 1.4 release notes
Backwards incompatible changes in 1.4
The password_reset view in django.contrib.auth now accepts a subject_template_name parameter, which is passed to the password save form as a keyword argument.
Release notes
Django 1.4.14 release notes
In older versions of Django it was possible to reveal any field’s data by modifying the “popup” and “to_field” parameters of the query string on an admin change form page.
Release notes
Django 1.5 release notes
Python compatibility
Django 1.5 introduces support for Python 3 - specifically, Python 3.2 and above. This comes in the form of a single codebase; you don’t need to install a different version of Django on Python 3.
Release notes
Django 1.5.9 release notes
In older versions of Django it was possible to reveal any field’s data by modifying the “popup” and “to_field” parameters of the query string on an admin change form page.
Release notes
Django 1.6.6 release notes
In older versions of Django it was possible to reveal any field’s data by modifying the “popup” and “to_field” parameters of the query string on an admin change form page.
Release notes
Django 1.7 release notes
What’s new in Django 1.7Minor features
The enter argument was added to the setting_changed signal. The model signals can be now be connected to using a str of the 'app_label.ModelName' form – just like related fields – to lazily reference their senders.
Release notes
Django 1.8 release notes
What’s new in Django 1.8
There is a corresponding form field. Django now has a DurationField for storing periods of time - modeled in Python by timedelta.
Release notes
Django 1.8 release notes
Features deprecated in 1.8
ModelChoiceField and ModelMultipleChoiceField took an undocumented, untested option cache_choices. This cached querysets between multiple renderings of the same Form object. This option is subject to an accelerated deprecation and will be removed in Django 1.9.
Release notes
Django 1.9 release notes
What’s new in Django 1.9Minor features
ModelForm accepts the new Meta option field_classes to customize the type of the fields. See Overriding the default fields for details.
Release notes
Django 1.9.2 release notes
A regression in Django 1.9 prevented that form submission from raising a “Permission Denied” error for users without the “add” permission.
Release notes
Django 2.0 release notes
What’s new in Django 2.0Minor features
The new date_attrs and time_attrs arguments for SplitDateTimeWidget and SplitHiddenDateTimeWidget allow specifying different HTML attributes for the DateInput and TimeInput (or hidden) subwidgets. The new Form.errors.get_json_data() method returns form errors as a dictionary suitable for including in a JSON response.
Release notes
Django 2.1 release notes
Backwards incompatible changes in 2.1Considerations for the new model “view” permission
With the new “view” permission, existing custom admin forms may raise errors when a user doesn’t have the change permission because the form might access nonexistent fields.
Release notes
Django 2.1.2 release notes
If an admin user has the change permission to the user model, only part of the password hash is displayed in the change form.
Release notes
Django 2.2 release notes
Features deprecated in 2.2
The FloatRangeField model and form fields in django.contrib.postgres are deprecated in favor of a new name, DecimalRangeField, to match the underlying numrange data type used in the database. The FILE_CHARSET setting is deprecated.
Release notes
Django 4.0 release notes
What’s new in Django 4.0Minor features
DeleteView now uses FormMixin, allowing you to provide a Form subclass, with a checkbox for example, to confirm deletion. In addition, this allows DeleteView to function with django.contrib.messages.views.SuccessMessageMixin.
Release notes
Django 4.0 release notes
Backwards incompatible changes in 4.0
DeleteView now uses FormMixin to handle POST requests. As a consequence, any custom deletion logic in delete() handlers should be moved to form_valid(), or a shared helper method, if required.
Release notes
Django 4.1 release notes
What’s new in Django 4.1Minor features
The default template used to render forms when cast to a string, e.g. in templates as {{ form }}, is now configurable at the project-level by setting form_template_name on the class provided for FORM_RENDERER.
Release notes
Django 4.1 release notes
What’s new in Django 4.1Minor features
For example, for the <p> output style used by as_p(), you would define a form renderer setting form_template_name to "django/forms/p.html" and formset_template_name to "django/forms/formsets/p.html".
Release notes
Django 4.1 release notes
Features deprecated in 4.1
Use POST requests instead. If you want to retain the user experience of an HTML link, you can use a form that is styled to appear as a link: