Exemplo n.º 1
0
def render_html_str(s, context=None, request=None):
    """ Use DjangoTemplates() to render a template string.
        Returns the rendered content str on success.
    """
    template = DjangoTemplates(settings.DJANGO_TEMPLATES_OPTS).from_string(s)
    try:
        content = template.render(context=context or {}, request=request)
    except Exception as ex:
        # For trimming the template string, for logging.
        max_content_len = 45
        log.error(
            '\n'.join((
                'Cannot render template str: {s}{ellipses}',
                '    Context: {context}',
                '    Request: {request}',
                '      Error: ({errtype}) {errmsg}',
            )).format(
                s=s[:max_content_len],
                ellipses='...' if len(s) > max_content_len else '',
                context=context,
                request=request,
                errtype=type(ex).__name__,
                errmsg=ex,
            )
        )
        return ''
    return content
Exemplo n.º 2
0
def render_html_str(s, context=None, request=None):
    """ Use DjangoTemplates() to render a template string.
        Returns the rendered content str on success.
    """
    template = DjangoTemplates(settings.DJANGO_TEMPLATES_OPTS).from_string(s)
    try:
        content = template.render(context=context or {}, request=request)
    except Exception as ex:
        # For trimming the template string, for logging.
        max_content_len = 45
        log.error('\n'.join((
            'Cannot render template str: {s}{ellipses}',
            '    Context: {context}',
            '    Request: {request}',
            '      Error: ({errtype}) {errmsg}',
        )).format(
            s=s[:max_content_len],
            ellipses='...' if len(s) > max_content_len else '',
            context=context,
            request=request,
            errtype=type(ex).__name__,
            errmsg=ex,
        ))
        return ''
    return content