mirror of
https://github.com/django/django.git
synced 2025-08-04 02:48:35 +00:00
Improve docs around deconstruction/serialisation (refs #22337)
This commit is contained in:
parent
f9d7e18dc5
commit
827d5dc189
3 changed files with 44 additions and 0 deletions
|
@ -128,6 +128,11 @@ built-in Django fields (``django/db/models/fields/__init__.py``) as several
|
|||
fields, including ``DecimalField`` and ``DateField``, override it and show how
|
||||
to call the method on the superclass and simply add or remove extra arguments.
|
||||
|
||||
This also means that all arguments to fields must themselves be serializable;
|
||||
to see what we consider serializable, and to find out how to make your own
|
||||
classes serializable, read the
|
||||
:ref:`migration serialization documentation <migration-serializing>`.
|
||||
|
||||
Calling custom ``QuerySet`` methods from the ``Manager``
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
|
@ -876,6 +881,22 @@ Instead, you are encouraged to load initial data in migrations if you need it
|
|||
this has the added advantage that your initial data will not need updating
|
||||
every time you change the schema.
|
||||
|
||||
deconstruct() and serializability
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Django now requires all Field classes and all of their constructor arguments
|
||||
to be serializable. If you modify the constructor signature in your custom
|
||||
Field in any way, you'll need to implement a deconstruct() method;
|
||||
we've expanded the custom field documentation with :ref:`instructions
|
||||
on implementing this method <custom-field-deconstruct-method>`.
|
||||
|
||||
The requirement for all field arguments to be
|
||||
:ref:`serializable <migration-serializing>` means that any custom class
|
||||
instances being passed into Field constructors - things like custom Storage
|
||||
subclasses, for instance - need to have a :ref:`deconstruct method defined on
|
||||
them as well <custom-deconstruct-method>`, though Django provides a handy
|
||||
class decorator that will work for most applications.
|
||||
|
||||
App-loading changes
|
||||
~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue