1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768 |
- """
- Django's support for templates.
- The django.template namespace contains two independent subsystems:
- 1. Multiple Template Engines: support for pluggable template backends,
- built-in backends and backend-independent APIs
- 2. Django Template Language: Django's own template engine, including its
- built-in loaders, context processors, tags and filters.
- Ideally these subsystems would be implemented in distinct packages. However
- keeping them together made the implementation of Multiple Template Engines
- less disruptive .
- Here's a breakdown of which modules belong to which subsystem.
- Multiple Template Engines:
- - django.template.backends.*
- - django.template.loader
- - django.template.response
- Django Template Language:
- - django.template.base
- - django.template.context
- - django.template.context_processors
- - django.template.loaders.*
- - django.template.debug
- - django.template.defaultfilters
- - django.template.defaulttags
- - django.template.engine
- - django.template.loader_tags
- - django.template.smartif
- Shared:
- - django.template.utils
- """
- # Multiple Template Engines
- from .engine import Engine
- from .utils import EngineHandler
- engines = EngineHandler()
- __all__ = ('Engine', 'engines')
- # Django Template Language
- # Public exceptions
- from .base import VariableDoesNotExist # NOQA isort:skip
- from .context import ContextPopException # NOQA isort:skip
- from .exceptions import TemplateDoesNotExist, TemplateSyntaxError # NOQA isort:skip
- # Template parts
- from .base import ( # NOQA isort:skip
- Context, Node, NodeList, Origin, RequestContext, Template, Variable,
- )
- # Library management
- from .library import Library # NOQA isort:skip
- __all__ += ('Template', 'Context', 'RequestContext')
|