1
0
mirror of https://github.com/django/django.git synced 2025-10-24 06:06:09 +00:00

Fixed #3094 -- Accelerated deprecation of XMLField, since it hasn't served any useful purpose since oldforms. Thanks to PaulM for driving the issue and providing the patch.

git-svn-id: http://code.djangoproject.com/svn/django/trunk@15723 bcc190cf-cafb-0310-a4f2-bffc1f526a37
This commit is contained in:
Russell Keith-Magee
2011-03-03 13:28:20 +00:00
parent b921f1bac0
commit d1290b5b43
8 changed files with 44 additions and 25 deletions

View File

@@ -41,9 +41,10 @@ their deprecation, as per the :ref:`Django deprecation policy
removed.
* The ``get_db_prep_save``, ``get_db_prep_value`` and
``get_db_prep_lookup`` methods on Field were modified in 1.2 to support
multiple databases. In 1.4, the support functions that allow methods
with the old prototype to continue working will be removed.
``get_db_prep_lookup`` methods on Field were modified in 1.2
to support multiple databases. In 1.4, the support functions
that allow methods with the old prototype to continue
working will be removed.
* The ``Message`` model (in ``django.contrib.auth``), its related
manager in the ``User`` model (``user.message_set``), and the
@@ -105,6 +106,12 @@ their deprecation, as per the :ref:`Django deprecation policy
with a trailing slash to ensure there is a consistent way to
combine paths in templates.
* ``django.db.models.fields.XMLField`` will be removed. This was
deprecated as part of the 1.3 release. An accelerated deprecation
schedule has been used because the field hasn't performed any role
beyond that of a simple ``TextField`` since the removal of oldforms.
All uses of ``XMLField`` can be replaced with ``TextField``.
* 1.5
* The ``mod_python`` request handler has been deprecated since the 1.3
release. The ``mod_wsgi`` handler should be used instead.

View File

@@ -12,7 +12,7 @@ This document contains all the gory details about all the `field options`_ and
.. seealso::
If the built-in fields don't do the trick, you can try
If the built-in fields don't do the trick, you can try
:mod:`django.contrib.localflavor`, which contains assorted pieces of code
that are useful for particular countries or cultures. Also, you can easily
:doc:`write your own custom model fields </howto/custom-model-fields>`.
@@ -462,7 +462,7 @@ The admin represents this as an ``<input type="text">`` (a single-line input).
For more information about the differences between the
:class:`FloatField` and :class:`DecimalField` classes, please
see :ref:`FloatField vs. DecimalField <floatfield_vs_decimalfield>`.
see :ref:`FloatField vs. DecimalField <floatfield_vs_decimalfield>`.
``EmailField``
--------------
@@ -557,7 +557,7 @@ day. If you upload a file on Jan. 15, 2007, it will be saved in the directory
If you wanted to retrieve the uploaded file's on-disk filename, or the file's
size, you could use the :attr:`~django.core.files.File.name` and
:attr:`~django.core.files.File.size` attributes respectively; for more
:attr:`~django.core.files.File.size` attributes respectively; for more
information on the available attributes and methods, see the
:class:`~django.core.files.File` class reference and the :doc:`/topics/files`
topic guide.
@@ -836,17 +836,18 @@ Like all :class:`CharField` subclasses, :class:`URLField` takes the optional
``XMLField``
------------
.. deprecated:: 1.3
``XMLField`` is deprecated. Use TextField instead.
.. class:: XMLField(schema_path=None, [**options])
A :class:`TextField` that checks that the value is valid XML that matches a
given schema. Takes one required argument:
A :class:`TextField` that stores XML data and a path to a schema. Takes one
optional argument:
.. attribute:: schema_path
The filesystem path to a RelaxNG_ schema against which to validate the
field.
The filesystem path to a schema for the field.
.. _RelaxNG: http://www.relaxng.org/
Relationship fields
===================

View File

@@ -843,3 +843,21 @@ migration. In Django 1.3, the ``PermWrapper`` class has also been
moved to ``django.contrib.auth.context_processors``, along with the
``PermLookupDict`` support class. The new classes are functionally
identical to their old versions; only the module location has changed.
Removal of ``XMLField``
~~~~~~~~~~~~~~~~~~~~~~~
When Django was first released, Django included an ``XMLField`` that
performed automatic XML validation for any field input. However, this
validation function hasn't been performed since the introduction of
``newforms``, prior to the 1.0 release. As a result, ``XMLField`` as
currently implemented is functionally indistinguishable from a simple
``TextField``.
For this reason, Django 1.3 has fast-tracked the deprecation of
``XMLField`` -- instead of a two-release deprecation, ``XMLField``
will be removed entirely in Django 1.4.
It's easy to update your code to accommodate this change -- just
replace all uses of ``XMLField`` with ``TextField``, and remove the
``schema_path`` keyword argument (if it is specified).

View File

@@ -106,9 +106,6 @@ the full list of conversions:
``URLField`` ``URLField`` with ``verify_exists`` set
to the model field's ``verify_exists``
``XMLField`` ``CharField`` with
``widget=forms.Textarea``
=============================== ========================================
.. versionadded:: 1.2