#15667: Implement template-based widget rendering
---------------------------------------+--------------------------
               Reporter:  brutasse     |          Owner:  brutasse
                   Type:  New feature  |         Status:  new
              Milestone:  1.4          |      Component:  Forms
                Version:               |       Severity:  Normal
             Resolution:               |       Keywords:
           Triage Stage:  Accepted     |      Has patch:  0
    Needs documentation:  0            |    Needs tests:  0
Patch needs improvement:  0            |  Easy pickings:  0
---------------------------------------+--------------------------

Comment (by brutasse):

 Replying to [comment:15 carljm]:
 > I don't think it's acceptable to have this enforced two-way coupling
 between forms and templates in the long run, but we do need to provide a
 deprecation-smoothed upgrade path. Here's my proposal:
 >
 > 1. Add the form-defaults template loader to TEMPLATE_LOADERS in the
 startproject template settings.py, but not to the global_settings
 TEMPLATE_LOADERS default.
 > 2. Document that you need to have the form-defaults template loader
 listed in TEMPLATE_LOADERS, if you want to have any of Django's default
 form/widget templates available (we should leave open the option that
 someone wants to provide all the form/widget templates they will use
 themselves, and not use any of the defaults built in to Django, though I
 think this is pretty unlikely in practice).
 > 3. Have temporary code that automatically adds the form template loader
 (last in priority order) if it is not listed in TEMPLATE_LOADERS, like you
 do now.
 > 4. If the form template loader is not explicitly listed in
 TEMPLATE_LOADERS and loads a template, have it issue
 PendingDeprecationWarning. This would result in lots of warnings, which is
 tricky. I don't want to make the warning module-wide, since, in the case I
 mentioned above, if people don't need the form-defaults loader because
 they provide all their own templates, they should be able to escape the
 warning. So it should only warn if the form loader actually loads a
 template. We might want to consider using some internal state on the
 loader to make it a first-time-only warning? I don't really like that, but
 it's better than hundreds of warnings or issuing the warning at module
 scope, IMO.
 > 5. When this deprecation cycle concludes in Django 1.6, remove the
 automatically-add-form-template-loader code. At this point, if people
 don't have the form template loader in TEMPLATE_LOADERS they'll just get a
 TemplateNotFound error for any form template they need but don't provide
 themselves.

 1) and 3) are done on the github branch, I'm not sure about the right way
 to implement 4) while making it consistent across the cached and non-
 cached template loaders... I'll dig a bit more but I'm open to
 suggestions.

-- 
Ticket URL: <http://code.djangoproject.com/ticket/15667#comment:22>
Django <http://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 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.

Reply via email to