mirror of
https://github.com/django/django.git
synced 2025-11-07 07:15:35 +00:00
Fixed #12663 -- Formalized the Model._meta API for retrieving fields.
Thanks to Russell Keith-Magee for mentoring this Google Summer of Code 2014 project and everyone else who helped with the patch!
This commit is contained in:
committed by
Tim Graham
parent
749d23251b
commit
fb48eb0581
@@ -29,6 +29,22 @@ Like Django 1.7, Django 1.8 requires Python 2.7 or above, though we
|
||||
What's new in Django 1.8
|
||||
========================
|
||||
|
||||
``Model._meta`` API
|
||||
~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Django now has a formalized API for :doc:`Model._meta </ref/models/meta>`,
|
||||
providing an officially supported way to :ref:`retrieve fields
|
||||
<model-meta-field-api>` and filter fields based on their :ref:`attributes
|
||||
<model-field-attributes>`.
|
||||
|
||||
The ``Model._meta`` object has been part of Django since the days of pre-0.96
|
||||
"Magic Removal" -- it just wasn't an official, stable API. In recognition of
|
||||
this, we've endeavored to maintain backwards-compatibility with the old
|
||||
API endpoint where possible. However, API endpoints that aren't part of the
|
||||
new official API have been deprecated and will eventually be removed. A
|
||||
:ref:`guide to migrating from the old API to the new API
|
||||
<migrating-old-meta-api>` has been provided.
|
||||
|
||||
Security enhancements
|
||||
~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
@@ -998,6 +1014,26 @@ Miscellaneous
|
||||
Features deprecated in 1.8
|
||||
==========================
|
||||
|
||||
Selected methods in ``django.db.models.options.Options``
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
As part of the formalization of the ``Model._meta`` API (from the
|
||||
:class:`django.db.models.options.Options` class), a number of methods have been
|
||||
deprecated and will be removed in in Django 2.0:
|
||||
|
||||
* ``get_all_field_names()``
|
||||
* ``get_all_related_objects()``
|
||||
* ``get_all_related_objects_with_model()``
|
||||
* ``get_all_related_many_to_many_objects()``
|
||||
* ``get_all_related_m2m_objects_with_model()``
|
||||
* ``get_concrete_fields_with_model()``
|
||||
* ``get_field_by_name()``
|
||||
* ``get_fields_with_model()``
|
||||
* ``get_m2m_with_model()``
|
||||
|
||||
A :ref:`migration guide <migrating-old-meta-api>` has been provided to assist
|
||||
in converting your code from the old API to the new, official API.
|
||||
|
||||
Loading ``cycle`` and ``firstof`` template tags from ``future`` library
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
|
||||
Reference in New Issue
Block a user