本文整理匯總了Python中jinja2.Template.new_context方法的典型用法代碼示例。如果您正苦於以下問題:Python Template.new_context方法的具體用法?Python Template.new_context怎麽用?Python Template.new_context使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類jinja2.Template
的用法示例。
在下文中一共展示了Template.new_context方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Python代碼示例。
示例1: __jinja2_content_title
# 需要導入模塊: from jinja2 import Template [as 別名]
# 或者: from jinja2.Template import new_context [as 別名]
def __jinja2_content_title(template: Template, attributes: dict) -> str:
"""Extract 'content_title' from Jinja2 template."""
content_title_block_name = 'content_title'
# noinspection PyUnresolvedReferences
if content_title_block_name not in template.blocks:
raise McMailTemplatesException('"%s" block was not found in template.')
# noinspection PyUnresolvedReferences
content_title_block = template.blocks[content_title_block_name]
context = template.new_context(attributes)
lines = []
for line in content_title_block(context):
if len(line):
lines.append(line.strip())
if not len(lines) == 1:
raise McMailTemplatesException('"%s" spans across more than one line' % content_title_block_name)
content_title = lines[0].strip()
if len(content_title) == 0:
raise McMailTemplatesException('"%s" is empty.' % content_title_block_name)
return content_title