问题标签 [cheetah]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
373 浏览

python - 我们如何设置 Cheetah,使其与模板目录中的所有模板和 .. 目录中的所有代码一起运行

我们如何设置 Cheetah,使其与模板目录中的所有模板和 .. 目录中的所有代码一起运行

在代码.py

在模板/mafbase.tmpl 和模板/mafbase.py

这可行,但加载速度很慢并导致超时错误

这不起作用,异常回溯是:

0 投票
1 回答
5475 浏览

python - 在 windows 和 python 2.6.1 中使用 Cheetah 模板系统(名称映射器问题)

所以我尝试将 Cheetah 模板引擎与 Django Web 框架结合使用,这实际上工作正常。我用它做了一些简单的测试,我能够渲染页面等等。

但是,除了在 Cheetah 模板中使用非常简单的变量/属性/方法之外,任何时候都会出现问题。它生气了,说:你没有安装 C 版本的 NameMapper!我正在禁用 Cheetah 的 useStackFrames 选项,因为它使用 Python 版本的 NameMapper 非常缓慢。您应该使用已编译的 C 版本的 NameMapper 获得 Cheetah 的副本。"\n你没有安装C版的NameMapper!"

然后它将无法找到我试图在 Cheetah 模板中调用的任何属性或方法。

我试图下载 Namemapper 的 C 版本并安装它,但我不确定如何“安装”一个 .pyd 文件(当我在网上查找“.pyd”文件时,它说它们只是动态 python 模块可以与 import 语句一起使用)。此外,Cheetah 网站只有 C 版本的 Namemapper 用于 python 2.4 和 2.5,而我使用的是 python 2.6.1,所以这也可能是一个问题。

有人对此有解决方案吗?谢谢。

0 投票
5 回答
411 浏览

python - 哪些 python 工具用于构建数据库支持的 webapp

我正在完成我的第一个数据库项目,该项目旨在构建一个简单的讨论站点。

我在 Superuser 上得到的答案表明,如果没有任何其他工具,Python 很难用于构建数据库 web 应用程序。

您还会使用哪些其他工具?

0 投票
2 回答
2986 浏览

javascript - 在python中生成javascript字符串

我将字符串存储在 python 变量中,我正在输出一个包含 javascript 的 html,并且我需要创建 javascript 变量。

例如,在 python 中

我使用 Cheetah 生成 html。猎豹代码:

我如何正确地转义它以便创建正确的 javascript 变量?需要的实际html输出:

0 投票
1 回答
386 浏览

python - Cheetah预编译模板使用

出于性能方面的建议我正在研究如何使用 pr 编译的模板。

hello.tmpl在模板目录中编辑为

然后发出cheetah-compile.exe .\hello.tmpl并得到hello.py

在另一个 python 文件runner.py中,我有:

但结果是

调试了一会,发现里面hello.py

看起来 trans 是 None,所以它转到了DummyTransaction,我在这里错过了什么?关于如何修复它的任何建议?

0 投票
2 回答
2264 浏览

python - Cheetah 和 Cherrypy:如何加载基础模板,并在开发过程中根据变化自动加载

我正在开发一个cherrypy+cheetah 应用程序,并希望改善开发体验。

当我事先手动编译模板时,我一切正常。(更新:这就是生产环境的工作方式:预编译,不要发送 *.tmpl 并将模板作为常规 python 模块加载。)但是,在开发过程中,我宁愿在每次引用模板时都加载模板,这样我就不会不需要杀死并重新启动我的应用程序。我有几个问题:

  1. 如果我有从基本模板继承的模板,我会收到导入错误(找不到基本模板)。我想我在实验期间确实有这个工作,但不幸的是没有保存它,现在我无法让它工作。
  2. 假设我得到 1. 工作,如何使它即使在基本模板中的编辑也可以在不重新启动的情况下被拾取。

下面是我应该演示问题的示例应用程序。目录结构如下:

t.py:

base.tmpl:

索引.tmpl:

像这样运行它:

0 投票
2 回答
1164 浏览

javascript - 将数据从cherrypy服务器端传递到javascript客户端

大图问题。我有一个cherrypy 服务器,它运行着我用python 编写的电子商务网站的所有购物车方法。我在前端使用 jquery。

在 javascript 中发布到我的 python 方法很容易,但不能以其他方式传递数据。我可以用 JSON 将它发回,但并不总是很方便。似乎最简单的方法是只使用 cheetah 创建 javascript 变量,var width = $width但这似乎很混乱。

我在这里做错了什么?我似乎根本没有正确地构建我的服务器-客户端交互。调用我的服务器方法的最佳方式是什么,以及将信息从服务器嵌入到页面中以便可以使用 javascript 处理的最佳方式是什么?

0 投票
1 回答
129 浏览

python - Cheetah 中的 Un/bound 方法

有没有办法在 cheetah 中声明静态方法?IE

片段.tmpl

其他.tmpl

此代码报告此错误:NotFound: cannot find 'address'. Cheetah 将其编译为绑定方法,natch:

片段.py

有没有办法声明静态方法?如果没有,有什么替代方法可以实现这样的东西(片段库)?

0 投票
1 回答
1130 浏览

python - 如何在 Cheetah for Python 中正确使用多维字典?

我有以下字典:

并使用 Cheetah,模板的以下部分:

当我运行代码时,我收到此错误:

在模板的第 1 行中,在 #for 声明中,我尝试分离出键值,例如:

但是,我仍然无法遍历这些值以获取必要的信息。

我在做一些公然错误的事情吗?

0 投票
1 回答
1175 浏览

python - Python Cheetah - 为模板指定名称/值对

我正在尝试模板化我的 Apache httpd 配置以部署到不同的环境,并且我想使用 Python 语言 Cheetah 应用程序来执行此操作。但是,我在使用命令行cheetah程序时遇到了困难,我相信这是我对 Cheetah 的误解以及缺乏文档的结合。

我的目标是拥有一个 httpd.conf 模板文件并从特定于环境的定义文件中替换变量。

httpd.tmpl:

生产环境:

填写这个 Cheetah 模板需要什么命令行?我用过:

cheetah f --oext conf --debug httpd

但显然prod.env不是作为输入文件读取的。#include在我的模板文件顶部添加一个:

并且没有找到我的名字:

这无论如何都不是理想的情况,因为我希望能够在命令行上为每次调用 cheetah 指定名称/值映射文件。

谢谢!

编辑:我知道我可以编写一个 python 脚本来执行文件读取,然后使用 Cheetah API 替换。但是,我正在寻找一种方法来使用命令行来填充我的模板。


解决了

感谢@pyfunc 提供的文档链接,我现在了解如何完成此操作。主要问题是--env在 cheetah 命令行上提供,它将当前环境变量传递给 cheetah。但是,必须先导出这些环境变量。