将网站副本作为标记格式文件的目录进行管理。将文件作为副本插入Django模板。

django-copyblock的Python项目详细描述


模版是出于我想把复制品分给一个网站的愿望 我正在从网站模板工作。比如欢迎信, 表单的简介副本等。这是副本我想能够调整 随着时间的推移,无需重新部署整个站点即可轻松完成 发生了。我想要的是一个类似gettext的系统,但是没有.po 文件,奇怪的语法,和一个separate应用程序来生成正确的文件。

我想要的是非常简单的:一个文本文件目录,可选的 在Markdown中,可以使用 模板标签。这就是copyblock所做的。

安装

来自PYPI:

% pip install django-copyblock

来自Github

% pip install -e git://github.com/sivy/django-copyblock.git#egg=copyblock

用法

为复制块文件创建根目录:

%  mkdir copy/dir

将此路径添加到设置文件:

COPYBLOCK_ROOT='path/to/your/copy/dir'

在您的模板中:

{% copyblock filename %}

这将执行以下操作:

  • 查找copy/dir/filename.markdown
  • 运行文件filename.markdown through markdown
  • 缓存输出以备将来查找
  • 在渲染模板中插入输出

现在,copyblock只做降价。如果你的副本没有降价 (纯文本),可以将nomarkdown参数传递给 模板标记:

{% copyblock filename nomarkdown %}

另外,如果不想使用内存缓存(从文件加载副本 每次,都可以进行复制编辑),传入nocache参数:

{% copyblock filename nocache %}

在处理站点复制时,关闭复制块会有帮助 完全缓存(insettings.py):

COPYBLOCK_CACHE=False

提供复制块文件

CopyBlock提供了一个简单的应用程序,可以在 所选URL端点上的copyblock\u根:

settings.py中,将模板名(在主应用程序中)设置为 通过以下方式呈现标记文件:

COPYBLOCK_TEMPLATE='template.html'

此模板应包含一个outputtemplate变量,如下所示:

{{ output|safe }}

urls.py中,添加:

urlpatterns += patterns('',
    url(r'^site/(?P<path>.+)',   include('copyblock.urls',  namespace="copyblock",  app_name='copyblock')),
)

这条路可以是你选择的任何一条。

现在,访问中的http://mysite.example.com/site/name-of-markdown-file 您的浏览器将加载

@待办事项

  • 添加对其他文本格式,甚至HTML(建议, 请求?steve@wallrazer.com
  • 将在^{tt7}中呈现任何文件的视图$ 通过站点的基本模板(base.html)在一个路径下 由urls.py确定。即,/path/to/copy/dir/foo.markdown 可以在yoursite.com/somepath/foo查看。或者,什么 像那样。[完成]

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java以编程方式添加了不出现在片段中的元素   servlet中的java URL模式“/”vs“/*”vs blank   java在ANTLR中递归处理规则   使用deltatime的java LibGdx更新不精确   java仅在安卓应用程序中使用FireBase数据库   java多枚举初始化   基于Java的Spring配置不扫描我的控制器映射   java GWT DataGrid不会显示并引发异常(仅在Google Chrome中)   java访问Springboot数据JPA中的字段[private int]时出错?   java Apple PassKit、Web服务调用了数百次   java TextWatcher addTextChangedListener添加多个侦听器   java Scala库初始化设计   java节省计时器时间并在onResume上恢复   java线程安全Servlet