#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 django-updates+unsubscr...@googlegroups.com.
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.

Reply via email to