#34883: Allow template tags to set extra data on templates.
-------------------------------------------+--------------------------
Reporter: Carlton Gibson | Owner: nobody
Type: New feature | Status: assigned
Component: Template system | Version: 5.0
Severity: Normal | Keywords:
Triage Stage: Unreviewed | Has patch: 0
Needs documentation: 0 | Needs tests: 0
Patch needs improvement: 0 | Easy pickings: 0
UI/UX: 0 |
-------------------------------------------+--------------------------
Custom template tags may need to pass additional data, beyond the node
list, out of the parsing context, for later use, by (e.g.) the template
loader, or other template clients.
Currently this is only feasible by attaching data to the `origin` object,
since that's the only object available to both the template and the
parser, but this isn't pretty.
I propose adding an additional attribute to the `Parser` that can be used
by template tag authors to have extra data set on the template instance,
that can then be used as needed.
This ticket comes from the forum discussion on
[https://forum.djangoproject.com/t/adding-template-fragments-or-partials-
for-the-dtl/21500 Adding template fragments or partials for the DTL] — it
is the necessary minimal first change to allow an official[*] API such
that a library such as `django-template-partials` can pass named node
lists out of the parser for later use. (I'd imagine it would be useful to
other tag library authors once in play.)
[*]: I say official, but I'm not sure whether to make this public — i.e.
documented — it's pretty niche — those who need it'll find it. I'd be
happy with a regression test making sure it didn't break but leaving it
undocumented beyond that. Opinions welcome. 🙂
--
Ticket URL: <https://code.djangoproject.com/ticket/34883>
Django <https://code.djangoproject.com/>
The Web framework for perfectionists with deadlines.
--
You received this message because you are subscribed to the Google Groups
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/django-updates/0107018ae204a738-7538be08-6270-4a41-8c6d-9e4ab849fcba-000000%40eu-central-1.amazonses.com.