Author: ramiro Date: 2011-01-25 09:42:24 -0600 (Tue, 25 Jan 2011) New Revision: 15309
Modified: django/trunk/docs/ref/settings.txt django/trunk/docs/ref/templates/api.txt django/trunk/docs/releases/1.2.txt Log: Fixed #14038 -- Added information to release notes and version changed|added markers to documentation additions for the new template loeaders API introduced in version 1.2. Thanks 3point2 for the report. Modified: django/trunk/docs/ref/settings.txt =================================================================== --- django/trunk/docs/ref/settings.txt 2011-01-25 08:37:35 UTC (rev 15308) +++ django/trunk/docs/ref/settings.txt 2011-01-25 15:42:24 UTC (rev 15309) @@ -1743,6 +1743,12 @@ module, subsequent items are passed to the ``Loader`` during initialization. See :doc:`/ref/templates/api`. +.. versionchanged:: 1.2 + The class-based API for template loaders was introduced in Django 1.2 + although the ``TEMPLATE_LOADERS`` setting will accept strings that specify + function-based loaders until compatibility with them is completely removed in + Django 1.4. + .. setting:: TEMPLATE_STRING_IF_INVALID TEMPLATE_STRING_IF_INVALID Modified: django/trunk/docs/ref/templates/api.txt =================================================================== --- django/trunk/docs/ref/templates/api.txt 2011-01-25 08:37:35 UTC (rev 15308) +++ django/trunk/docs/ref/templates/api.txt 2011-01-25 15:42:24 UTC (rev 15309) @@ -630,9 +630,14 @@ Some of these other loaders are disabled by default, but you can activate them by editing your :setting:`TEMPLATE_LOADERS` setting. :setting:`TEMPLATE_LOADERS` -should be a tuple of strings, where each string represents a template loader. -Here are the template loaders that come with Django: +should be a tuple of strings, where each string represents a template loader +class. Here are the template loaders that come with Django: +.. versionchanged:: 1.2 + Template loaders were based on callables (usually functions) before Django + 1.2, starting with the 1.2 release there is a new class-based API, all the + loaders described below implement this new API. + ``django.template.loaders.filesystem.Loader`` Loads templates from the filesystem, according to :setting:`TEMPLATE_DIRS`. This loader is enabled by default. Modified: django/trunk/docs/releases/1.2.txt =================================================================== --- django/trunk/docs/releases/1.2.txt 2011-01-25 08:37:35 UTC (rev 15308) +++ django/trunk/docs/releases/1.2.txt 2011-01-25 15:42:24 UTC (rev 15309) @@ -256,6 +256,29 @@ languages. For more details, see the :ref:`notes on supporting non-Django template languages<topic-template-alternate-language>`. +Class-based template loaders +---------------------------- + +As part of the changes made to introduce `Template caching`_ and following +a general trend in Django, the template loaders API has been modified +to use template loading mechanisms that are encapsulated in Python classes as +opposed to functions, the only method available until Django 1.1. + +All the template loaders :ref:`shipped with Django <template-loaders>` have +been ported to the new API but they still implement the function-based API and +the template core machinery still accepts function-based loaders (builtin or +third party) so there is no immediate need to modify your +:setting:`TEMPLATE_LOADERS` setting in existing projects, things will keep +working if you leave it untouched up to and including the Django 1.3 release. + +If you have developed your own custom template loaders we suggest to consider +porting them to a class-based implementation because the code for backwards +compatibility with function-based loaders starts its deprecation process in +Django 1.2 and will be removed in Django 1.4. There is a description of the +API these loader classes must implement :ref:`here +<topic-template-alternate-language>` and you can also examine the source code +of the loaders shipped with Django. + Natural keys in fixtures ------------------------ @@ -1137,3 +1160,10 @@ The currently used language code for Norwegian Bokmål ``no`` is being replaced by the more common language code ``nb``. +Function-based template loaders +------------------------------- + +Django 1.2 changes the template loading mechanism to use a class-based +approach. Old style function-based template loaders will still work, but should +be updated to use the new :ref:`class-based template loaders +<topic-template-alternate-language>`. -- You received this message because you are subscribed to the Google Groups "Django updates" group. To post to this group, send email to django-updates@googlegroups.com. To unsubscribe from this group, send email to django-updates+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/django-updates?hl=en.