Opened 15 years ago

Last modified 13 years ago

#13470 closed

Debug TEMPLATE_LOADERS causes 'source' to be set to "<unknown source>" when TEMPLATE_DEBUG is True — at Version 1

Reported by: sdeibel@… Owned by: nobody
Component: Uncategorized Version: 1.2-beta
Severity: Keywords: settings template_debug template_loaders template node source
Cc: sdeibel@… Triage Stage: Unreviewed
Has patch: yes Needs documentation: no
Needs tests: no Patch needs improvement: no
Easy pickings: no UI/UX: no

Description (last modified by Alex Gaynor)

A work around is to set settings.py TEMPLATE_LOADERS to start with (or
contain only) the following:

    'django.template.loaders.filesystem.load_template_source',
    'django.template.loaders.app_directories.load_template_source',

However, it seems it would be good to properly set 'source' on nodes when
TEMPLATE_DEBUG is True. To fix this, change template/loader.py's
BaseLoader.load_template to read as follows so that an origin object
is properly created and sent into get_template_from_string when
TEMPLATE_DEBUG is True:

    def load_template(self, template_name, template_dirs=None):
        source, origin = self.load_template_source(template_name, template_dirs)
        origin_obj = make_origin(origin, self, template_name, template_dirs)
        template = get_template_from_string(source, origin=origin_obj, name=template_name)
        return template, origin

This is based on the 1.2beta-1 release.

Change History (1)

comment:1 by Alex Gaynor, 15 years ago

Description: modified (diff)

Please use preview.

Note: See TracTickets for help on using tickets.
Back to Top