python - 在 pelican 中打印 jinja2 模板的最后修改

标签 python jinja2 pelican

我正在使用 Pelican 3.3,我的 jinja2 模板中有一个 几乎 静态文件 index.html。我想在其中显示文件的最后修改日期。

我很容易发现 article.locale_datepage.locale_date 正在完成文章和页面的工作(DEFAULT_DATE = 'fs').但是,我不知道如何为模板文件执行此操作。

我找到了 some suggestions关于通过其他 Python 模块(例如 FlaskEnvironment)使用 Python 函数。但是,是否有更简单的方法来获取模板文件的最后修改日期?

最佳答案

我发现了一个肮脏的技巧,所以我仍然希望有人能以比我更好的方式回答这个问题。

要点是使用pelicanconf.py 文件设置环境变量以获得所需的日期。我刚刚将以下内容添加到 pelicanconf.py:

import os.path, time
INDEX_DATE = time.ctime(os.path.getmtime(path/to/the/index.html))

一旦你获得了 INDEX_DATE 变量集,你就可以像这样在你的 Jinja2 模板中使用它:

{{ INDEX_DATE }}

所以,这是一个快速而肮脏的把戏。希望有人能给我一个更好的方法!

关于python - 在 pelican 中打印 jinja2 模板的最后修改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20766692/

相关文章:

yaml - 在 Ansible-YAML 中使用相对路径引用多维数组中的另一个元素

python - Pelican:创建超链接元数据

image - 如何使用重构文本嵌入完整的 pdf?

Python创建多线程并创建处理时间

python - vispy:两个数据集在同一个图上有颜色

python - 在 Python 中使用类和函数通过递归查找结果时出现问题

python - 是否可以使用 Jinja2 模板对文档中的参数进行逆向工程?

ansible - 多行模板 - Ansible 中的字符串转义

python - django rest framework 'QuerySet' 对象没有属性 '_meta'