Django的Jinja2的是一个简单的下降对有条件和无缝渲染Jinja2的模板(及其上下文)解决方案,同时默认为Django的模板引擎。
默认情况下,如果文件名包含.jinja(或foo.jinja.html)扩展,模板会被通过的Jinja2呈现。
条件可以通过你的settings.py在JINJA2_ENGINE_CONDITION,接收到模板作为第一个参数的完整路径的功能进行自定义。 Jinja2的使用,如果该函数返回true。
 例如,你可以使用的发动机,如果该文件是在一个名为神社,或读取文件的第一行。
你可能会迫使所有的模板使用的Jinja2始终返回true如拉姆达X:真
即在settings.TEMPLATE_LOADERS所有由每个装载机返回的目录的定义 - 在Jinja2的环境与在相同的环境中的django装载机使用创建
安装
抢码
克隆库和添加django_jinja2您python软件包或安装使用PIP安装Django-的Jinja2。
加入settings.py
加入“django_jinja2'你安装的应用程序
INSTALLED_APPS = [
 #...
 “django_jinja2',
]
在django_jinja2.loaders装载机替换模板装载机。
TEMPLATE_LOADERS =(
 “django_jinja2.loaders.filesystem.Loader',
 “django_jinja2.loaders.app_directories.Loader',
)
完成了!现在,所有你需要做的就是呈现在扩展名神社的模板。
默认设置
默认设置可以通过你的Django站点设置覆盖。
JINJA2_GLOBAL_CONTEXT = {
 “反向”:反转,
 “MEDIA_URL”:settings.MEDIA_URL,
 'STATIC_URL':GETATTR(设置,'STATIC_URL',''),
}
JINJA2_EXTENSIONS = []
#可以是接受一个模板名称/模板迪尔斯功能
#1可能读取该文件,并确保有一个标志或某种模式在文件的开始,等等。
JINJA2_ENGINE_CONDITION =拉姆达template_path:在os.path.basename(template_path)'神社“.split('。')
#访问这些Django模板装载机的文件被拖入神社环境
JINJA2_TEMPLATE_LOADERS = settings.TEMPLATE_LOADERS
#覆盖神社2模板类的要求
JINJA2_TEMPLATE_CLASS = Jinja2DjangoTemplate
如果settings.DEBUG:
  JINJA2_UNDEFINED_CLASS = Jinja2UndefinedClass
其他:
  JINJA2_UNDEFINED_CLASS = Jinja2UndefinedClass
要求:
- 在Python中
- 在Django的
评论没有发现