如何检查 CKAN 模板中是否启用了扩展

How to check if an extension is enabled in CKAN templates

有没有一种方法可以检查 CKAN 模板中的扩展名是否 enabled/installed?

我正在寻找类似的东西:

{% if ?????? %}
    Some logic
{% endif %}

??? 应该是什么?

??? 可以是辅助函数(例如 h.get("A FUNCTION NAME") ),但我想知道是否有一种方法可以直接检查扩展是否存在。

当前启用的插件列表可能隐藏在模板环境中的某个地方,但它在 Flask 和 Pylons 模板之间会有所不同,也许最好不要依赖。

正如你提到的,我已经看到它作为助手完成了几次。或者,您可以将启用的插件列表添加到 g(全局变量)。

在模板中使用似乎是一件相当普遍的事情,所以一旦您将它添加到您的 CKAN 扩展中,为什么不也将它贡献给 CKAN 核心呢?在创建拉取请求之前,您可以在 ckan 上创建问题并查看技术团队是否同意。