49 lines
2.1 KiB
Plaintext
49 lines
2.1 KiB
Plaintext
|
.. _howto-newforms-migration:
|
||
|
|
||
|
Migrating from "oldforms" to "newforms"
|
||
|
=======================================
|
||
|
|
||
|
:mod:`django.newforms` is new in Django's 0.96 release, but, as it won't be new
|
||
|
forever. We plan to rename it to ``django.forms`` in next official release. The
|
||
|
current ``django.forms`` package will be available as ``django.oldforms`` until
|
||
|
Django 1.0, when we plan to remove it for good.
|
||
|
|
||
|
If you're using "old" forms -- and if you started using Django after 0.96 you're
|
||
|
probably not -- you need to read this document and understand this migration
|
||
|
plan.
|
||
|
|
||
|
* The old forms framework (the current ``django.forms``) has been copied to
|
||
|
``django.oldforms``. Thus, you can start upgrading your code *now*,
|
||
|
rather than waiting for the future backwards-incompatible change, by
|
||
|
changing your import statements like this::
|
||
|
|
||
|
from django import forms # old
|
||
|
from django import oldforms as forms # new
|
||
|
|
||
|
* In the next Django release, we will move the current ``django.newforms``
|
||
|
to ``django.forms``. This will be a backwards-incompatible change, and
|
||
|
anybody who is still using the old version of ``django.forms`` at that
|
||
|
time will need to change their import statements, as described in the
|
||
|
previous bullet.
|
||
|
|
||
|
* We will remove ``django.oldforms`` in Django 1.0. It will continue to be
|
||
|
available from older tags in our SVN repository, but it will not be
|
||
|
consider part of Django, and will not be supported..
|
||
|
|
||
|
With this in mind, we recommend you use the following import statement when
|
||
|
using ``django.newforms``::
|
||
|
|
||
|
from django import newforms as forms
|
||
|
|
||
|
This way, your code can refer to the ``forms`` module, and when
|
||
|
``django.newforms`` is renamed to ``django.forms``, you'll only have to change
|
||
|
your ``import`` statements.
|
||
|
|
||
|
If you prefer "``import *``" syntax, you can do the following::
|
||
|
|
||
|
from django.newforms import *
|
||
|
|
||
|
This will import all fields, widgets, form classes and other various utilities
|
||
|
into your local namespace. Some people find this convenient; others find it
|
||
|
too messy. The choice is yours.
|