我设置了Pylons v0.9.7,并使用genshi创建了一个项目。 我尝试编写一个简单的测试用例,但它无法正常工作。
代码:member.py
coding: utf-8
import logging import foo.model
from foo.lib.base import *
log = logging.getLogger(__name__)
class MemberController(BaseController):
def index(self):
c.title="title"
c.mes="message"
return render('test.html')
代码:test.html
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns:py="http://genshi.edgewall.org/"
lang="ja">
<head>
<title>${c.title}</title>
</head>
<body>
<p>${c.mes}</p>
</body>
</html>
和错误消息(在日志中)
Error - <type 'exceptions.NameError'>: global name 'c' is not defined
请帮我找错。
答案 0 :(得分:3)
c.title="title"
要求定义名称c
(全局或本地)。您永远不会定义名为c
的任何。
因此,在为c
指定任何内容之前,请定义合适的名称title
(可以设置属性c.title
的名称!)!
下一个提示:from pylons import tmpl_context as c
- 你没有做 from ... import ... as
,你现在吗? - )