当您想要覆盖项目中的应用程序模板时,此应用程序很有用。目前这在 Django 中产生无限递归
项目描述
<nav class="contents" id="contents" role="doc-toc">
内容
django-smart-扩展
django-smart-extends 是一个 Django 应用程序,它允许改进 Django 模板的扩展系统。
它是根据许可条款分发的,写入同一目录中的文件 COPYING.LGPLv3
依赖项
Django >= 1.5(主分支)
Django 1.5.X 和 1.4.X、1.3.X 和 1.2.X以及1.1.X有特定的分支(还有一个旧的和未维护的Django 1.1.0分支,没有最后的更改)
如何安装
在你的 settings.py
INSTALLED_APPS = ( 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.sites', 'django.contrib.admin', ... 'smartextends', )
如果你想:
OVERWRITE_EXTENDS = True
如何使用
当您想要覆盖项目中的应用程序模板时,此应用程序很有用。目前这在 Django 中产生无限递归
这是 django.contrib.admin 应用程序的示例,但 django-smart-extends 可用于任何应用程序,这不仅适用于管理站点。如果您使用可重用的 django 应用程序或在 django 中实现的任何 CMS,这将非常有用。
如果设置 OVERWRITE_EXTENDS = True
{% extends "admin/change_list.html" %} {% block extrastyle %} {{ block.super }} <link rel="stylesheet" type="text/css" href="XXX" /> {% endblock %}
别的:
{% smart_extends "admin/change_list.html" %} {% block extrastyle %} {{ block.super }} <link rel="stylesheet" type="text/css" href="XXX" /> {% endblock %}
补丁
如果您在 settings.py 中设置 TEMPLATE_DEBUG = False ,则必须修补 django 代码。您可以在补丁目录中找到补丁:
patch -p2 -N -d my/path/of/django/ < ./patches/patch.diff
报告
0.7.0 (2013-10-05)
将存储库移动到 github
添加示例项目
添加单元测试
代码改进(针对每个分支)
补丁的改进(针对每个分支
与特拉维斯集成
细节
0.6 (2012-11-07)
与 Django 1.4 兼容(当 DEBUG_TEMPLATE 为 False 时需要 Django 补丁)
0.5.1 (2011-12-03)
与 Django 1.2 和 Django 1.3 兼容(当 DEBUG_TEMPLATE 为 False 时需要 Django 补丁)
0.5.0 (2011-01-11)
初始版本